fix: Add dynamic values from engine settings and model params to inference request

This commit is contained in:
hiro 2023-12-05 00:32:01 +07:00
parent 516e226290
commit 4f2a3b7b27

View File

@ -1,3 +1,4 @@
import { Model } from "@janhq/core";
import { Observable } from "rxjs"; import { Observable } from "rxjs";
/** /**
* Sends a request to the inference server to generate a response based on the recent messages. * Sends a request to the inference server to generate a response based on the recent messages.
@ -6,21 +7,23 @@ import { Observable } from "rxjs";
*/ */
export function requestInference( export function requestInference(
recentMessages: any[], recentMessages: any[],
engine: EngineSettings,
model: Model,
controller?: AbortController controller?: AbortController
): Observable<string> { ): Observable<string> {
return new Observable((subscriber) => { return new Observable((subscriber) => {
const requestBody = JSON.stringify({ const requestBody = JSON.stringify({
messages: recentMessages, messages: recentMessages,
stream: true, model: model.id,
model: "gpt-3.5-turbo", stream: model.parameters.stream || true,
max_tokens: 2048, max_tokens: model.parameters.max_tokens || 2048,
}); });
fetch(INFERENCE_URL, { fetch(INFERENCE_URL, {
method: "POST", method: "POST",
headers: { headers: {
"Content-Type": "application/json", "Content-Type": "application/json",
Accept: "text/event-stream",
"Access-Control-Allow-Origin": "*", "Access-Control-Allow-Origin": "*",
Accept: "text/event-stream",
}, },
body: requestBody, body: requestBody,
signal: controller?.signal, signal: controller?.signal,