91 | | === Configuring available AI models |
| 91 | === Configuration of available AI models |
| 92 | //dj//**AI** is not, and does not contain, a Large Language Model (LLM) by itself. Instead, it's a flexible interface to standardize and simplify AI briefing and use. The actual AI functionality is provided by external services. |
| 93 | |
| 94 | Currently, //dj//**AI** supports these models: |
| 95 | * openAI: GPT3.5 turbo. We are still on the waitlist for GPT4 and will integrate it as soon as we can access it. |
| 96 | * AlephAlpha: base, extended and supreme levels. |
| 97 | |
| 98 | Model support is done by simple plugins that must implement an interface with very few methods. We'll implement more models as needed (integration of RedPajama running on a local video board is on the way). We'll provide the interface definition with some documentation, so anyone can write their own plugins. |
| 99 | |
| 100 | In //djAI//, AI models are configured in the file {{{Models.json}}} in the main program folder. The default file looks like this: |
| 101 | {{{ |
| 102 | { |
| 103 | "Models": { |
| 104 | "GPT35": { |
| 105 | "Description": "GPT3.5 - 4k tokens", |
| 106 | "Assembly": "djAIModels", |
| 107 | "Type": "AiModels.Gpt35", |
| 108 | "ApiKey": "<your openAI API key>", |
| 109 | "Url": "https://api.openai.com/v1/chat/completions", |
| 110 | "ChatSummaryTransform": "TBD", |
| 111 | "ChatMaxMessagesChars": 1000, |
| 112 | "ChatMaxPrefixChars": 1000, |
| 113 | "Custom": { |
| 114 | "Temperature": 0.9 |
| 115 | } |
| 116 | }, |
| 117 | "AlephAlphaCompletion": { |
| 118 | "Description": "AlephAlpha Completion Base", |
| 119 | "Assembly": "djAIModels", |
| 120 | "Type": "AiModels.AlephAlphaCompletion", |
| 121 | "ApiKey": "<your AlephAlpha API key>", |
| 122 | "Url": "https://api.aleph-alpha.com/complete", |
| 123 | "ChatSummaryTransform": "AlephAlpha - Summarize chat", |
| 124 | "ChatMaxMessagesChars": 1000, |
| 125 | "ChatMaxPrefixChars": 1000, |
| 126 | "Custom": { |
| 127 | "Temperature": 0.9, |
| 128 | "ModelVariant": "luminous-base" |
| 129 | } |
| 130 | }, |
| 131 | "AlephAlphaCompletionExtended": { |
| 132 | "Description": "AlephAlpha Completion Extended", |
| 133 | "Assembly": "djAIModels", |
| 134 | "Type": "AiModels.AlephAlphaCompletion", |
| 135 | "ApiKey": "<your AlephAlpha API key>", |
| 136 | "Url": "https://api.aleph-alpha.com/complete", |
| 137 | "ChatSummaryTransform": "AlephAlpha - Summarize chat", |
| 138 | "ChatMaxMessagesChars": 1000, |
| 139 | "ChatMaxPrefixChars": 1000, |
| 140 | "Custom": { |
| 141 | "Temperature": 0.9, |
| 142 | "ModelVariant": "luminous-extended" |
| 143 | } |
| 144 | }, |
| 145 | "AlephAlphaCompletionSupreme": { |
| 146 | "Description": "AlephAlpha Completion Supreme", |
| 147 | "Assembly": "djAIModels", |
| 148 | "Type": "AiModels.AlephAlphaCompletion", |
| 149 | "ApiKey": "<your AlephAlpha API key>", |
| 150 | "Url": "https://api.aleph-alpha.com/complete", |
| 151 | "ChatSummaryTransform": "AlephAlpha - Summarize chat", |
| 152 | "ChatMaxMessagesChars": 1000, |
| 153 | "ChatMaxPrefixChars": 1000, |
| 154 | "Custom": { |
| 155 | "Temperature": 0.9, |
| 156 | "ModelVariant": "luminous-supreme" |
| 157 | } |
| 158 | } |
| 159 | } |
| 160 | }}}} |