mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-12-17 00:40:14 +01:00
fix(titleConvo): use openAIApiKey and azure config from route handler (#637)
* fix(titleConvo): use openAIApiKey from route handler, handle azure conditional from route * chore: remove comment
This commit is contained in:
parent
3e5c5a828d
commit
1b999108e4
3 changed files with 24 additions and 14 deletions
|
|
@ -2,7 +2,7 @@
|
||||||
const _ = require('lodash');
|
const _ = require('lodash');
|
||||||
const { genAzureChatCompletion, getAzureCredentials } = require('../utils/');
|
const { genAzureChatCompletion, getAzureCredentials } = require('../utils/');
|
||||||
|
|
||||||
const titleConvo = async ({ text, response, oaiApiKey }) => {
|
const titleConvo = async ({ text, response, openAIApiKey, azure = false }) => {
|
||||||
let title = 'New Chat';
|
let title = 'New Chat';
|
||||||
const ChatGPTClient = (await import('@waylaidwanderer/chatgpt-api')).default;
|
const ChatGPTClient = (await import('@waylaidwanderer/chatgpt-api')).default;
|
||||||
|
|
||||||
|
|
@ -19,7 +19,6 @@ const titleConvo = async ({ text, response, oaiApiKey }) => {
|
||||||
||>Title:`
|
||>Title:`
|
||||||
};
|
};
|
||||||
|
|
||||||
const azure = process.env.AZURE_API_KEY ? true : false;
|
|
||||||
const options = {
|
const options = {
|
||||||
azure,
|
azure,
|
||||||
reverseProxyUrl: process.env.OPENAI_REVERSE_PROXY || null,
|
reverseProxyUrl: process.env.OPENAI_REVERSE_PROXY || null,
|
||||||
|
|
@ -35,7 +34,9 @@ const titleConvo = async ({ text, response, oaiApiKey }) => {
|
||||||
frequency_penalty: 0
|
frequency_penalty: 0
|
||||||
};
|
};
|
||||||
|
|
||||||
let apiKey = oaiApiKey || process.env.OPENAI_API_KEY;
|
let apiKey = openAIApiKey ?? process.env.OPENAI_API_KEY;
|
||||||
|
|
||||||
|
console.log('title api key', apiKey);
|
||||||
|
|
||||||
if (azure) {
|
if (azure) {
|
||||||
apiKey = process.env.AZURE_API_KEY;
|
apiKey = process.env.AZURE_API_KEY;
|
||||||
|
|
|
||||||
|
|
@ -167,17 +167,17 @@ const ask = async ({ text, endpoint, endpointOption, parentMessageId = null, con
|
||||||
...endpointOption
|
...endpointOption
|
||||||
};
|
};
|
||||||
|
|
||||||
let oaiApiKey = req.body?.token ?? process.env.OPENAI_API_KEY;
|
let openAIApiKey = req.body?.token ?? process.env.OPENAI_API_KEY;
|
||||||
if (process.env.PLUGINS_USE_AZURE) {
|
if (process.env.PLUGINS_USE_AZURE) {
|
||||||
clientOptions.azure = getAzureCredentials();
|
clientOptions.azure = getAzureCredentials();
|
||||||
oaiApiKey = clientOptions.azure.azureOpenAIApiKey;
|
openAIApiKey = clientOptions.azure.azureOpenAIApiKey;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (oaiApiKey && oaiApiKey.includes('azure') && !clientOptions.azure) {
|
if (openAIApiKey && openAIApiKey.includes('azure') && !clientOptions.azure) {
|
||||||
clientOptions.azure = JSON.parse(req.body?.token) ?? getAzureCredentials();
|
clientOptions.azure = JSON.parse(req.body?.token) ?? getAzureCredentials();
|
||||||
oaiApiKey = clientOptions.azure.azureOpenAIApiKey;
|
openAIApiKey = clientOptions.azure.azureOpenAIApiKey;
|
||||||
}
|
}
|
||||||
const chatAgent = new PluginsClient(oaiApiKey, clientOptions);
|
const chatAgent = new PluginsClient(openAIApiKey, clientOptions);
|
||||||
|
|
||||||
const onAgentAction = (action) => {
|
const onAgentAction = (action) => {
|
||||||
const formattedAction = formatAction(action);
|
const formattedAction = formatAction(action);
|
||||||
|
|
@ -235,7 +235,12 @@ const ask = async ({ text, endpoint, endpointOption, parentMessageId = null, con
|
||||||
res.end();
|
res.end();
|
||||||
|
|
||||||
if (parentMessageId == '00000000-0000-0000-0000-000000000000' && newConvo) {
|
if (parentMessageId == '00000000-0000-0000-0000-000000000000' && newConvo) {
|
||||||
const title = await titleConvo({ text, response });
|
const title = await titleConvo({
|
||||||
|
text,
|
||||||
|
response,
|
||||||
|
openAIApiKey,
|
||||||
|
azure: !!clientOptions.azure,
|
||||||
|
});
|
||||||
await saveConvo(req.user.id, {
|
await saveConvo(req.user.id, {
|
||||||
conversationId: conversationId,
|
conversationId: conversationId,
|
||||||
title
|
title
|
||||||
|
|
|
||||||
|
|
@ -138,15 +138,14 @@ const ask = async ({ text, endpointOption, parentMessageId = null, endpoint, con
|
||||||
...endpointOption
|
...endpointOption
|
||||||
};
|
};
|
||||||
|
|
||||||
let oaiApiKey = req.body?.token ?? process.env.OPENAI_API_KEY;
|
let openAIApiKey = req.body?.token ?? process.env.OPENAI_API_KEY;
|
||||||
|
|
||||||
if (process.env.AZURE_API_KEY && endpoint === 'azureOpenAI') {
|
if (process.env.AZURE_API_KEY && endpoint === 'azureOpenAI') {
|
||||||
clientOptions.azure = JSON.parse(req.body?.token) ?? getAzureCredentials();
|
clientOptions.azure = JSON.parse(req.body?.token) ?? getAzureCredentials();
|
||||||
// clientOptions.reverseProxyUrl = process.env.AZURE_REVERSE_PROXY ?? genAzureChatCompletion({ ...clientOptions.azure });
|
openAIApiKey = clientOptions.azure.azureOpenAIApiKey;
|
||||||
oaiApiKey = clientOptions.azure.azureOpenAIApiKey;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const client = new OpenAIClient(oaiApiKey, clientOptions);
|
const client = new OpenAIClient(openAIApiKey, clientOptions);
|
||||||
|
|
||||||
let response = await client.sendMessage(text, {
|
let response = await client.sendMessage(text, {
|
||||||
user,
|
user,
|
||||||
|
|
@ -180,7 +179,12 @@ const ask = async ({ text, endpointOption, parentMessageId = null, endpoint, con
|
||||||
res.end();
|
res.end();
|
||||||
|
|
||||||
if (parentMessageId == '00000000-0000-0000-0000-000000000000' && newConvo) {
|
if (parentMessageId == '00000000-0000-0000-0000-000000000000' && newConvo) {
|
||||||
const title = await titleConvo({ text, response });
|
const title = await titleConvo({
|
||||||
|
text,
|
||||||
|
response,
|
||||||
|
openAIApiKey,
|
||||||
|
azure: endpoint === 'azureOpenAI'
|
||||||
|
});
|
||||||
await saveConvo(req.user.id, {
|
await saveConvo(req.user.id, {
|
||||||
conversationId,
|
conversationId,
|
||||||
title
|
title
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue