What we build

Three kinds of work,explained plainly.

For each one: the problem it addresses, typical uses, what you receive, and what it cannot do. Technical detail comes after the business meaning.

01

AI knowledge assistants and enterprise search

Assistants that answer questions from your documents and business data, and show the source behind every answer.

The problem
The information people need is spread across documents, shared drives, and business systems. Keyword search misses relevant material, and generic chat tools cannot reliably answer from your own content.
Typical uses
  • Questions about policies, procedures, and manuals
  • Searching contracts, reports, and research documents
  • Internal assistants for support, sales, or operations teams
  • Questions that need both documents and structured (SQL) data
What you receive
  • A pipeline that ingests, splits, and indexes your documents
  • Search that combines keyword and semantic retrieval
  • Answers with citations to the passages they came from
  • Access rules for what each user is allowed to retrieve
  • A test set of real questions used to measure retrieval and answer quality
Limits to know about
Answers can only be as good as the source material. An assistant can still be wrong: citations let people check an answer, and high-stakes decisions need human review. Fully offline deployments give more control over data but can run smaller models.

Technologies we use Python · OpenAI / Azure OpenAI · Local models (Ollama) · Qdrant, pgvector, FAISS · BM25 hybrid search · FastAPI

Discuss a project like this
02

AI workflow automation and integrations

Software that carries out approved, multi-step tasks across your systems, with a person approving the steps that matter.

The problem
Routine work moves between email, spreadsheets, and business systems. Rule-based automation breaks when inputs vary, and unsupervised AI is not acceptable for actions with real consequences.
Typical uses
  • Triage and routing of incoming requests
  • Extracting information from documents into business systems
  • Updating records from several sources
  • Security-operations playbooks and incident triage
What you receive
  • A map of the workflow, marking which steps need human approval
  • Integrations with your tools and APIs, limited to the permissions each step needs
  • AI only where inputs vary; ordinary rules where they do not
  • A log of every action the system takes
  • Tests for both the expected path and failure cases
Limits to know about
Not every workflow benefits from an AI agent, and deterministic steps should stay deterministic. Integrations depend on the APIs and access your systems provide. Actions with financial, legal, or safety impact should keep a human approval step.

Technologies we use Python · LangGraph · FastAPI · REST APIs · Model Context Protocol (MCP) · Cortex XSOAR

Discuss a project like this
03

Production AI: evaluation, deployment, and support

Taking an AI prototype into dependable use: measuring its quality, deploying it, and keeping it observable once people rely on it.

The problem
Many AI prototypes work in a demo but have no way to measure quality, no repeatable deployment, and no visibility once real users depend on them.
Typical uses
  • Reviewing an existing prototype before a wider rollout
  • Building an evaluation set and regression checks
  • Containerised deployment on AWS, Azure, or GCP
  • Reducing model cost and response time
What you receive
  • An evaluation dataset and automated quality checks
  • A repeatable deployment pipeline (containers, CI/CD)
  • Logging and tracing of model calls
  • A written runbook for operating the system
Limits to know about
Evaluation measures quality on the cases you test; it cannot guarantee behaviour on every input. Any ongoing support is agreed separately for each engagement.

Technologies we use Docker · Kubernetes · AWS · Azure ML · MLflow · Databricks

Discuss a project like this
04

Also available

Smaller areas where the team has relevant experience. Get in touch to discuss whether one fits your situation.

Tell us about the problem.

Send a short, nonconfidential summary of the problem. We read every enquiry and reply to arrange a conversation.

Sending an enquiry starts a conversation. It does not commit either side to a project.