优化功能

This commit is contained in:
Vinlic
2024-03-08 21:38:04 +08:00
parent 78b267c3e8
commit 9a50c30ef7
4 changed files with 125 additions and 52 deletions

View File

@@ -3,9 +3,10 @@ import _ from 'lodash';
import Request from '@/lib/request/Request.ts';
import Response from '@/lib/response/Response.ts';
import chat from '@/api/controllers/chat.ts';
import logger from '@/lib/logger.ts';
export default {
prefix: '/v1/chat',
post: {
@@ -13,11 +14,19 @@ export default {
'/completions': async (request: Request) => {
request
.validate('body.messages', _.isArray)
chat.setRefreshToken(request.body.refresh_token);
const stream = await chat.createCompletionStream(request.body.messages, request.body.use_search);
return new Response(stream, {
type: "text/event-stream"
});
.validate('headers.authorization', _.isString)
const token = request.headers.authorization;
const refreshToken = token.replace('Bearer ', '');
logger.info(`Refresh token: ${refreshToken}`);
const messages = request.body.messages;
if (request.body.stream) {
const stream = await chat.createCompletionStream(request.body.messages, refreshToken, request.body.use_search);
return new Response(stream, {
type: "text/event-stream"
});
}
else
return await chat.createCompletion(messages, refreshToken, request.body.use_search);
}
}