AI Services
The AI Services section configures AI providers for two distinct purposes:
- Chat AI (Connect) powers AI features in Thirdlane Connect such as composer rewrite (Improve / tone / length), thread summarization, suggested replies, and translation.
- Recording AI powers post-call analysis on transcribed call recordings (summary, sentiment, categorization, action items, QA score, entity extraction, compliance).
For Text-to-Speech and voice transcription, see Speech Services (next to AI Services in the menu).
Where AI Services are configured
In Configuration Manager, open AI Services under Communications and Services. The grid lists the AI service entries that have been provisioned. Sysadmins can add, edit, and remove entries; tenant admins can pick from existing entries on their own configuration page.
The form’s Purpose dropdown offers:
- Recording AI — post-call analysis on call recordings.
- Chat AI (Connect) — in-app AI features in the chat client.
The Provider dropdown offers:
- OpenAI — hosted OpenAI API.
- Google Gemini — hosted Google Gemini API.
- Anthropic (Claude) — hosted Anthropic Claude API.
- OpenAI-compatible — any OpenAI-compatible chat completions endpoint (Azure OpenAI, Groq, OpenRouter, or a self-hosted gateway).
Common fields
- Name — internal identifier for the entry.
- Description — short note for sysadmins.
Recording AI analysis features
For Recording AI services, individual analysis features run automatically after transcription:
- Summary — generates a concise summary of the call.
- Sentiment — analyzes overall sentiment with a confidence score.
- Categorization — classifies the call into a category.
- Action Items — extracts follow-up tasks with assignees and deadlines.
- QA Score — rates call quality on a 5-point scale across communication dimensions.
- Entity Extraction — identifies names, organizations, dates, and other key entities.
- Compliance — checks for required disclosures and flags potential compliance issues.
Chat AI feature toggles
For Chat AI (Connect) services, four feature toggles control which composer features the service powers:
- Enable Composer Rewrite — Improve, tone (Casual / Professional / Confident / Enthusiastic), and length (Make shorter / Make longer).
- Enable Thread Summarize — on-demand summary of a chat or channel.
- Enable Suggested Replies — one-tap reply suggestions from visible context.
- Enable Translate Draft — translate a draft message into a target language.
Disabling a toggle removes the matching control from the chat composer for tenants that pick this service.
Provider configuration
OpenAI
- API Key — the OpenAI secret key. Stored as a password and never echoed back.
- Base URL — defaults to
https://api.openai.com/v1. Leave the default for openai.com. - Organization — optional OpenAI organization ID.
- Model — chat completion model (e.g.
gpt-4o-mini,gpt-4o). Leave blank to use the provider default.
Google Gemini
- API Key — a Google AI Studio API key. Stored as a password.
- Model — e.g.
gemini-2.5-flashorgemini-2.5-pro. Leave blank to use the provider default.
Anthropic (Claude)
- API Key — your Anthropic API key. Stored as a password.
- Model — e.g.
claude-3-5-haiku-latestorclaude-3-5-sonnet-latest. Leave blank to use the provider default.
OpenAI-compatible
For any endpoint that speaks the OpenAI chat completions API:
- API Key — optional; supply only if the endpoint requires it (self-hosted gateways may be keyless).
- Base URL — required. Point at Azure OpenAI, Groq, OpenRouter, or a self-hosted server.
- Model — the model name expected by that endpoint.
All four providers support both Recording AI analysis features and the Chat AI feature toggles.
Service profiles — multiple entries per AI offering
The grid is intentionally a flat list, so sysadmins can create multiple entries with different feature sets. Examples:
| Service Name | Provider | Toggles enabled | Use case |
|---|---|---|---|
| Acme Connect AI Premium | OpenAI | Rewrite + Summarize + Suggest + Translate | Premium tenants |
| Acme Connect AI Basic | Google Gemini | Rewrite + Summarize | Standard tenants |
| Acme Recording AI Full | Anthropic | Summary + Sentiment + Categorization + Action Items + QA + Entities + Compliance | Regulated industries |
| Acme Recording AI Light | OpenAI | Summary + Sentiment | Standard organizations |
Entries can share the same provider and model; they differ only in which feature toggles are enabled. To change what a tenant receives, simply switch their service assignment.
Tenant assignment
In Tenants -> Edit -> Connect AI Service (sysadmins) or Tenant -> Edit -> Connect AI Service (tenant admin), pick the AI Services entry that should serve this tenant’s users. Tenants follow the global default unless explicitly overridden.
Per-user override
User Extensions have a Connect AI Access field with three states:
- Inherit from tenant — follow the tenant’s master switch.
- Allow — force AI on for this user even if the tenant has it disabled.
- Deny — hide all Connect AI features for this user even when the tenant has it enabled.
This lets organizations pilot the feature with a small group, or exclude specific roles from AI features.
How composer rewrite works
When a Connect user clicks the Improve / tone / length chip in the chat composer, the front-end calls the PBX’s /facade/connect-ai/rewrite endpoint with the draft text and a style identifier (e.g. professional, shorten). The PBX picks the appropriate AI Services entry for the tenant, builds a structured chat-completion request, and returns the rewritten text.
Per-style minimum input length. Each style has a minimum word count:
| Style | Minimum words | Why |
|---|---|---|
| Improve | 1 | Lowest-friction polish; safe even on a single word. |
| Casual / Professional / Confident / Enthusiastic | 3 | Tone shifts on shorter inputs tend to confabulate context. |
| Make longer | 5 | Below this, the model has nothing to expand on without inventing content. |
| Shorten | 8 | Nothing to shorten if the input is already short. |
When the draft is below the threshold, the chip is disabled in the UI with a tooltip (“Add a few more words…”), and the server-side enforces the same threshold defensively (returns rewrite_input_too_short). This prevents the most common small-model failure mode — generating plausible-sounding content that has no basis in the user’s actual draft.
Prompt engineering. Each style ships with a system prompt and one neutral, topic-free few-shot example. The prompts include explicit anti-confabulation rules (“NEVER invent topics, recipients, deadlines…”), anti-leakage rules (“DO NOT copy specific topic, words, names from the example…”), and speaker-direction rules (“You are reformulating the user’s message, NOT replying to it…”). User input is wrapped in a REWRITE: task prefix so smaller models do not interpret a request-shaped draft (“can you send me the report?”) as a chat turn to answer.
Model capability. Composer rewrite is sensitive to model capability — very small models tend to treat the input as a chat turn to answer rather than a string to transform. The hosted cloud models (OpenAI, Gemini, Anthropic) comfortably clear this bar across all rewrite styles. When pointing an OpenAI-compatible endpoint at a self-hosted model, prefer a mid-size instruction-tuned model for reliable rewrites.
See also
- Speech Services (TTS and Voice Transcription) — text-to-speech and voice transcription configuration.
- TTS and Voice Transcription — detailed setup for AWS, Google, Custom, and Thirdlane speech providers.