Feature request: Adding temperature as parameter (#513)

* Adding temperature as parameter

* NEXT_PUBLIC_ prefix added

* add spacing

---------

Co-authored-by: Ivan Fioravanti <>
Co-authored-by: Mckay Wrigley <mckaywrigley@gmail.com>
This commit is contained in:
Ivan Fioravanti
2023-04-13 13:09:03 +02:00
committed by GitHub
parent d1eb6ee29b
commit ea1d09244a
26 changed files with 142 additions and 25 deletions
+8 -3
View File
@@ -1,4 +1,4 @@
import { DEFAULT_SYSTEM_PROMPT } from '@/utils/app/const';
import { DEFAULT_SYSTEM_PROMPT, DEFAULT_TEMPERATURE } from '@/utils/app/const';
import { OpenAIError, OpenAIStream } from '@/utils/server';
import { ChatBody, Message } from '@/types/chat';
@@ -15,7 +15,7 @@ export const config = {
const handler = async (req: Request): Promise<Response> => {
try {
const { model, messages, key, prompt } = (await req.json()) as ChatBody;
const { model, messages, key, prompt, temperature } = (await req.json()) as ChatBody;
await init((imports) => WebAssembly.instantiate(wasm, imports));
const encoding = new Tiktoken(
@@ -29,6 +29,11 @@ const handler = async (req: Request): Promise<Response> => {
promptToSend = DEFAULT_SYSTEM_PROMPT;
}
let temperatureToUse = temperature;
if (temperatureToUse == null) {
temperatureToUse = DEFAULT_TEMPERATURE;
}
const prompt_tokens = encoding.encode(promptToSend);
let tokenCount = prompt_tokens.length;
@@ -47,7 +52,7 @@ const handler = async (req: Request): Promise<Response> => {
encoding.free();
const stream = await OpenAIStream(model, promptToSend, key, messagesToSend);
const stream = await OpenAIStream(model, promptToSend, temperatureToUse, key, messagesToSend);
return new Response(stream);
} catch (error) {