Purpose of This Guide
This guide provides administrators with step-by-step instructions for configuring AI providers within the QuikData platform.
QuikData uses a centralized AI Provider table (DRControl.dbo.AIProvider) to register and manage cloud-based and local AI models that power features such as summarization, document classification, privilege analysis, and other AI-assisted review capabilities.
Because AI provider configuration is global across the entire QuikData installation (not per Environment or Room), correct setup is essential for ensuring consistent model availability, accurate billing, and reliable system performance.
This guide explains how to:
Register supported AI providers (OpenAI, Anthropic, Jan, TabbyAPI, Azure OpenAI)
Configure model metadata, capabilities, and API interaction details
Encrypt and store provider API keys
Maintain accurate token cost and pricing information
Insert one row per model into the AIProvider database table
What You Will Need
Before configuring AI providers within the QuikData platform, ensure you have the following:
QuikData Version 5.8 or greater
Access to the QuikData DRControl Database
Administrator or DB access is required to insert rows into thedbo.AIProvidertable.-
A Registered API Account with a Supported AI Provider
QuikData currently supports:Azure OpenAI (uses ProviderName =
OpenAI)Jan (local LLM hosting)
TabbyAPI (local LLM hosting)
Other OpenAI-compatible API endpoints
Providers must expose either:
An OpenAI Chat Completions–compatible API, or
An Anthropic Messages–compatible API
An Encrypted API Key
API keys must be encrypted using the QuikData Key Encrypter Utility before being stored in the database.
If you do not have this utility, a QuikData Support Representative can encrypt the value for you.
Supported AI Providers
Privacy and Data Security Considerations
When transmitting client data to external AI providers, it is essential to consider how those providers will protect the confidentiality and security of that data. Any use of AI-powered features should align with your organization’s established privacy, security, and regulatory requirements.
Before enabling the transmission of data to third-party AI services such as OpenAI, Anthropic, Azure, or other cloud-based or external APIs, administrators should:
- Review the provider’s data handling and retention policies: Confirm whether submitted data is stored, logged, or used for model training. Many providers allow customers to disable data retention for enhanced confidentiality.
- Evaluate contractual protections: Many AI providers — including OpenAI and Azure — offer enterprise agreements or addenda similar to Business Associate Agreements (BAAs) that provide stronger privacy protections than standard API terms.
Each QuikData customer is responsible for establishing appropriate contractual protections with their chosen AI providers and ensuring that all external data transmission complies with internal policies and applicable regulations.
The ProviderName field determines which AI engine integration QuikData uses.
Only the following values are supported:
| ProviderName | Description / Usage | Examples | Notes |
|---|---|---|---|
| OpenAI | OpenAI’s Chat Completions API and Azure OpenAI endpoints |
gpt-4o-2024-08-06, gpt-4o-mini-2024-07-18
|
Azure OpenAI must also use OpenAI
|
| Anthropic | Anthropic Claude models using /v1/messages
|
claude-3-5-sonnet, claude-3-5-haiku
|
Supports Anthropic headers (x-api-key, anthropic-version) |
| Jan | Local model hosting through Jan.AI | Local LLaMA, Mistral, etc. | OpenAI-compatible local API |
| TabbyAPI | Local inference server for LLaMA/Mistral models | Any model served by Tabby | Lightweight self-hosted OpenAI-style API |
Notes:
Each model variant must be registered as a separate row.
OpenAIis used for both standard OpenAI and Azure OpenAI APIs.Jan and TabbyAPI enable fully local inference (no cloud dependency).
How to Register an AI Model in QuikData
To make an AI model available inside the QuikData platform, administrators must insert a row into the DRControl.dbo.AIProvider table.
Each row corresponds to one model — for example:
GPT-4o
GPT-4o-mini
Claude 3.5 Sonnet
A TabbyAPI-hosted local LLaMA model
This guide will walk you through:
The fields that must be populated
What each field represents
How QuikData uses these values internally
An example SQL INSERT statement you can use as a template to register your AI model
The next section describes each column in the AIProvider table so you can correctly supply the required values when adding new models.
AIProvider Table – Field Definitions
The following table describes every column required to register an AI model in QuikData.
| Column Name | Type | Description / Usage |
|---|---|---|
| Id | int (identity) |
Unique identifier for the AI provider entry. Auto-generated unless using IDENTITY_INSERT. |
| ProviderName | nvarchar(256) |
Specifies the AI provider or engine type. Supported values: OpenAI, Anthropic, Jan, TabbyAPI. Determines which QuikData engine integration is used. |
| EngineName | nvarchar(128) |
The model identifier presented to users and passed to the provider. Examples: gpt-4o-2024-08-06, claude-3-5-sonnet, llama-3.1-70b-instruct. |
| EngineDescriptionLocalizedJSON | nvarchar(max) |
A JSON dictionary containing localized descriptions of the model for UI display. Example: { "EN": "High-quality model for complex tasks" }. |
| ApiEndpointURL | nvarchar(1024) |
The URL used to send inference requests to the provider. For Azure OpenAI, place the Azure endpoint here but still use ProviderName = 'OpenAI'. |
| MaxContextWindowTokens | int |
Maximum total tokens supported by the model (input + output). Used to prevent oversize prompts. |
| MaxOutputTokens | int |
Maximum number of output tokens QuikData may request from the model. |
| SupportsStructuredOutput | bit |
Indicates whether the model supports structured / JSON output. Enables typed AI responses. |
| SupportsImageAnalysis | bit |
Indicates whether the model supports image inputs for multimodal analysis. |
| DefaultAPIKeyEncrypted | nvarchar(max) |
The encrypted API key used for authentication. Must be encrypted with the QuikData Key Encrypter Utility. |
| InputTokensCostPerMillion | decimal(18,3) |
Vendor’s internal cost per million input tokens. Used for internal cost reporting. |
| OutputTokensCostPerMillion | decimal(18,3) |
Vendor’s cost per million output tokens. |
| InputTokensPricePerMillion | decimal(18,3) |
Administrator-defined price per million input tokens (used for client billing or usage tracking). |
| OutputTokensPricePerMillion | decimal(18,3) |
Administrator-defined price per million output tokens. |
Example: Registering AI Models
Below is an example showing how to register two OpenAI GPT-4o models.
INSERT INTO [AIProvider] (
[ProviderName],
[EngineName],
[EngineDescriptionLocalizedJSON],
[ApiEndpointURL],
[MaxContextWindowTokens],
[MaxOutputTokens],
[SupportsStructuredOutput],
[SupportsImageAnalysis],
[DefaultAPIKeyEncrypted],
[InputTokensCostPerMillion],
[OutputTokensCostPerMillion],
[InputTokensPricePerMillion],
[OutputTokensPricePerMillion]
) VALUES (
N'OpenAI',
N'gpt-4o-2024-08-06',
N'{ "EN": "Ideal for complex, nuanced tasks requiring the highest quality outputs, with a substantial context window." }',
N'https://api.openai.com/v1/chat/completions',
128000,
16384,
1,
0,
N'<encrypted API key>',
2.500,
10.000,
7.500,
30.000
);
INSERT INTO [AIProvider] (
[ProviderName],
[EngineName],
[EngineDescriptionLocalizedJSON],
[ApiEndpointURL],
[MaxContextWindowTokens],
[MaxOutputTokens],
[SupportsStructuredOutput],
[SupportsImageAnalysis],
[DefaultAPIKeyEncrypted],
[InputTokensCostPerMillion],
[OutputTokensCostPerMillion],
[InputTokensPricePerMillion],
[OutputTokensPricePerMillion]
) VALUES (
N'OpenAI',
N'gpt-4o-mini-2024-07-18',
N'{ "EN": "Cost-efficient model offering strong performance for lightweight tasks." }',
N'https://api.openai.com/v1/chat/completions',
128000,
16384,
1,
0,
N'<encrypted API key>',
0.150,
0.600,
0.450,
1.800
);
Notes for Administrators
Execute this script against the QuikData control database (the database that contains the
AIProvidertable).-
You may prefix the table with schema or database name if required by your environment:
[dbo].[AIProvider][ClientName_Control].[dbo].[AIProvider]
Only one row should be inserted per AI model.
Post-Update Procedures
After updating the AIProvider table, the QuikData platform must refresh its internal AI configuration cache.
AI Providers are loaded once during web application startup and remain cached until explicitly refreshed.
To ensure newly added or updated AI models become available to users:
Log into your QuikData instance as an Administrator.
Navigate to:
Site Admin → Site Settings → Refresh CacheClick Refresh Cache to reload all cached configuration data, including AI Providers.
This operation instructs the QuikData application to:
Reload the AI Provider list
Update available models displayed in dropdowns
Apply any changes made to model descriptions, costs, or API configurations
Ensure all AI features use the most current provider information
Important:
If the cache is not refreshed, newly added models will not appear in the UI until the next full application restart.
Comments
0 comments
Please sign in to leave a comment.