Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 36 additions & 1 deletion docs/espocrm-extensions/espocrm-ai/features/admin-settings.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@ The response cache reuses identical AI responses for selected features.
![AI Settings Response Cache Tab](../../../_static/images/espocrm-extensions/ai/features/admin-settings-response-cache-tab.png)
### Settings

- **Response Cache**
- **Response Cache**
- **Cache TTL** in days

### What Is Cached
Expand Down Expand Up @@ -195,6 +195,41 @@ The button then appears:
- In the main list view header
- In supported relationship panel lists

## Complete Settings Key Inventory
Comment thread
eymen-elkum marked this conversation as resolved.
Outdated

The table below maps every key from `custom/Espo/Modules/EblaAi/Resources/metadata/entityDefs/Settings.json`.

| Metadata key | UI label | Tab | Purpose |
|---|---|---|---|
| `defaultAiProvider` | Default AI Provider | General | Global provider switch used by most UI visibility checks and fallback provider resolution. |
| `defaultAiProfile` | Default AI Profile | AI Features | Global fallback profile when no feature-specific or entity-specific profile is resolved. |
| `aiSystemInstructions` | Global AI Instructions | General | Prepended global instructions for AI requests. |
| `smartPasteScopes` | Smart Paste Scopes | General | Controls Smart Paste button visibility by entity scope. |
| `aiCreateScopes` | AI Create Scopes | General | Controls `Create with AI` button visibility by entity scope. |
| `aiTranslateLanguages` | Field Translation Languages | Translate | Language list for field/stream translate actions. |
| `enableEmailTranslate` | Enable Email Translate | Translate | Shows or hides Email `Translate` action. |
| `aiEmailTranslateDefaultPromptId` | Email Translate Prompt | Translate | Optional default prompt template for email translation flow. |
| `aiDefaultTokenLimit` | Default Token Limit | Token Limits | System-wide fallback token limit (`0` = unlimited). |
| `aiTokenLimitPeriod` | Token Limit Period | Token Limits | Limit period: `daily`, `weekly`, `monthly`. |
| `aiMaxToolIterations` | Max Tool-Call Iterations | Token Limits | Max tool-call rounds per tool-enabled chat request. |
| `aiCacheEnabled` | Enable Response Cache | Response Cache | Enables/disables AI response cache for supported endpoints. |
| `aiCacheTtlDays` | Cache TTL (days) | Response Cache | Cache retention duration in days. |
| `aiChatDefaultProfileId` | AI Chat | AI Features | Default profile for record AI Chat panel. |
| `aiSummaryDefaultProfileId` | AI Summary | AI Features | Default profile for AI Summary panel. |
| `aiEmailComposerDefaultProfileId` | Email Composer | AI Features | Default profile for email draft/reply/polish flows. |
| `aiFieldActionDefaultProfileId` | Field Actions | AI Features | Default profile for text/varchar/wysiwyg/stream field actions. |
| `aiSmartPasteDefaultProfileId` | Smart Paste | AI Features | Default profile for Smart Paste extraction flow. |
| `aiVisionDefaultProfileId` | Image Analysis | AI Features | Default profile for image/attachment analysis flow. |
| `aiAdminAssistantDefaultProfileId` | Admin Assistant | AI Features | Default profile for admin assistant chat requests. |
| `aiEmailTranslateDefaultProfileId` | Email Translate | AI Features | Default profile for email translation flow. |
| `aiImageGenerateDefaultProfileId` | Image Generation | AI Features | Default profile for AI image generation. |
| `aiSpeechDefaultProfileId` | Speech Generation | AI Features | Default profile for speech generation (`eblaAi\\generateSpeech`). |
Comment thread
eymen-elkum marked this conversation as resolved.
Outdated

Comment thread
eymen-elkum marked this conversation as resolved.
Outdated
### Option values with explicit enums

- `defaultAiProvider`: `Disable` (`""`), `OpenAi`, `Gemini`, `Anthropic`, `OpenRouter`, `Ollama`
- `aiTokenLimitPeriod`: `daily`, `weekly`, `monthly`

## Related Features

- [AI Profiles](ai-profiles.md)
Expand Down
4 changes: 2 additions & 2 deletions docs/espocrm-extensions/espocrm-ai/features/email-analysis.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,5 +62,5 @@ Use the refresh icon in the panel header when:

## Related Features

- [AI Email Composer](email-compose.md)
- [Email Reply](email-reply.md)
- [AI Email Composer](email-composer.md)
- [Email Translation](email-translation.md)
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,6 @@ When the email is not HTML, Ebla AI adds a small button row above the textarea w

## Related Features

- [Email Reply](email-reply.md)
- [Email Analysis Panel](email-analysis.md)
- [Email Translation](email-translation.md)
- [AI Profiles](ai-profiles.md)
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,13 @@ Email Translation translates an email into the current user's language using AI.
Users need:

- `Ai` access
- `Ai Email Composer` access

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@copilot revert this change

- Read access to Email
- A configured default AI provider

Administrators also need:

- **Enable Email Translate** turned on in **AI Settings -> Translate**
- A configured **AI Email Translate Default Prompt**
- A configured **AI Email Translate Default Prompt** (recommended for consistent output)

## Translating an Email

Expand Down Expand Up @@ -63,4 +62,4 @@ If no translation profile is assigned, the feature falls back to the normal defa

- [AI Prompts](ai-prompts.md)
- [AI Profiles](ai-profiles.md)
- [Email Reply](email-reply.md)
- [AI Email Composer](email-composer.md)
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,11 @@ Users need:
- A configured default AI provider
- A provider or profile that supports image generation

Recommended admin setting:

- **AI Settings -> AI Features -> Image Generation** (`aiImageGenerateDefaultProfileId`)
for a dedicated image-capable profile.

## Enabling It on a Field

Image generation is opt-in per field.
Expand Down
8 changes: 6 additions & 2 deletions docs/espocrm-extensions/espocrm-ai/features/smart-paste.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,15 @@ It is useful for turning business cards, email signatures, copied messages, meet
Users need:

- `Ai` access
Comment thread
eymen-elkum marked this conversation as resolved.
- `Ai Smart Paste` access
- A configured default AI provider
- Create access for new-record Smart Paste

Administrators also need to configure visibility in **Administration -> AI Settings -> General -> Smart Paste Scopes**.
Administrators configure visibility in **Administration -> AI Settings -> General -> Smart Paste Scopes**.

Current scope behavior:

- Empty `Smart Paste Scopes` is treated as enabled for all customizable entities in main list and new-record flows.
- Relationship-panel behavior may differ if no scopes are explicitly selected.

## Where Smart Paste Appears

Expand Down
2 changes: 1 addition & 1 deletion docs/espocrm-extensions/espocrm-ai/features/token-usage.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ Per-request details are stored in `AiLog`.

1. Navigate to **{{siteUrl}}/#AiTokenUsage**.
2. Review usage by user and date.
3. Open **AI Token Usage** when you need call-level detail.
3. Open **AI Log** when you need call-level detail.

## Token Limits

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,11 @@ See [Formula](formula.md) for usage examples.

The extension includes provider-specific speech generation support for selected providers such as OpenAI and Gemini.

Recommended admin setting:

- **AI Settings -> AI Features -> Speech Generation** (`aiSpeechDefaultProfileId`)
to bind speech generation to a compatible profile.

Actual voice names and audio formats depend on the provider behind the resolved profile.

## Related Features
Expand Down