Connect your own AI
On-site, your AI can run on your own server too.
On this page 3 sections
Ordo On-site runs on your own computer or server, and so can its AI. Connect a model you run yourself, like Qwen, or your company's own AI service. Call notes, account research and Ask Ordo AI then all go to it: your calls, notes and records are never sent to Google, Anthropic or us for AI.
Try it
- .env
- AI_PROVIDER=openai-compatible
- Restart Ordo
Then open a meeting with a transcript and choose Analyze with AI.
Set it up
What you need
- A model server: Ollama or LM Studio on the same computer, or anything your IT team runs that speaks the OpenAI chat format (vLLM, llama.cpp, a gateway).
- A graphics card with enough memory for the model size you choose (see Which model size). Without one it works, but a call note can take minutes.
- Access to Ordo's
.envfile, in the folder Ordo is installed in. Settings there take effect when Ordo restarts.
Ollama with Qwen, step by step
- Install Ollama from ollama.com/download.
- Give models room to read a whole call: set the environment variable
OLLAMA_CONTEXT_LENGTHto32768, then restart Ollama. On Windows: Start → "Edit environment variables for your account" → New. - Download the model, in a terminal:
ollama pull qwen3:8b - Add these lines to Ordo's
.envand restart Ordo:AI_PROVIDER=openai-compatible AI_BASE_URL=http://localhost:11434/v1 AI_MODEL=qwen3:8b - Open a meeting with a transcript and choose Analyze with AI. The first answer is the slowest, while the model loads.
LM Studio
Download the model in LM Studio and load it with a Context Length of 32768 or more. Then start the server under Developer → Start server, and use its address and the model's name as LM Studio lists it:
AI_PROVIDER=openai-compatible
AI_BASE_URL=http://localhost:1234/v1
AI_MODEL=qwen3-8b
Your company's AI service or gateway
Any service with the OpenAI chat format works the same way: vLLM, a llama.cpp server, LiteLLM, or a hosted service your company already pays for. Add a key if it needs one; it's sent as Authorization: Bearer ….
AI_PROVIDER=openai-compatible
AI_BASE_URL=https://ai.yourcompany.internal/v1
AI_MODEL=qwen3-32b
AI_API_KEY=your-key
Anything else: a connector of your own
For an AI with its own kind of API, a developer writes a small connector: one JavaScript file whose default export takes the request and returns the answer. Start from connectors/example.js in the Ordo folder; it's a working example with notes on every part.
// connectors/my-ai.js
export default async function complete({ system, user, schema, maxTokens }) {
// system: the instructions · user: the call, pages or CRM data · schema: the JSON the answer must match
const res = await fetch("https://ai.yourcompany.internal/generate", { method: "POST", body: JSON.stringify({ system, user, schema }) });
return (await res.json()).output; // a JSON object, or JSON text
}
AI_PROVIDER=custom
AI_CONNECTOR=./connectors/my-ai.js
Ordo loads it once, and checks every answer before using it. It runs inside Ordo with Ordo's access, so use only your own code.
Which model size
Bigger models write better notes but need more graphics memory and take longer. Smaller ones can miss a price or a date, or fail to give their answer in the shape Ordo needs; models under about 7B often can't. Start with an 8B model, and move up if the notes miss things.
Before relying on a model, an administrator can run npm run check-calls with the same settings. It checks a sample call's note: the prices, dates and promises it must catch, and how long it took.
If something goes wrong
- "Ordo can't reach the AI at http://localhost:11434/v1. Is Ollama running?" Start Ollama (or LM Studio's server) and try again. Check that the address in
.envis right. - "Check AI_BASE_URL and AI_MODEL in .env." The address usually ends in
/v1, and the model's name must be exactly as the server lists it (for Ollama:ollama list). - "The AI only read part of this" or "The AI can't read all of this": the model's context length is too small for a long call. Set it to 32768 or more:
OLLAMA_CONTEXT_LENGTHfor Ollama, Context Length when loading the model in LM Studio,--max-model-lenfor vLLM. - "The AI at … stopped before it answered": the AI server stopped, usually because the model didn't fit in memory. Use a smaller model, or close other programs that use the graphics card.
- "The AI took too long to answer": Ordo waits up to 3 minutes. Use a smaller model, or a computer with a graphics card.
- "The AI did not return JSON": the model couldn't give its answer in the shape Ordo needs. Try a bigger model.