diff options
| author | MohamedBassem <me@mbassem.com> | 2024-03-27 10:15:27 +0000 |
|---|---|---|
| committer | Mohamed Bassem <me@mbassem.com> | 2024-03-27 11:56:13 +0000 |
| commit | ff00ebca308f445785096611c47beed0c2c46c9c (patch) | |
| tree | 510f4139ce89affc2ff04bb61731097b7cb64e37 /apps/workers | |
| parent | 75dbb95807069f4ed86392da8fb744d8c6ac016c (diff) | |
| download | karakeep-ff00ebca308f445785096611c47beed0c2c46c9c.tar.zst | |
refactor: Validate env variables using zod
Diffstat (limited to 'apps/workers')
| -rw-r--r-- | apps/workers/crawlerWorker.ts | 2 | ||||
| -rw-r--r-- | apps/workers/openaiWorker.ts | 22 |
2 files changed, 12 insertions, 12 deletions
diff --git a/apps/workers/crawlerWorker.ts b/apps/workers/crawlerWorker.ts index 282f5f43..3f7bff94 100644 --- a/apps/workers/crawlerWorker.ts +++ b/apps/workers/crawlerWorker.ts @@ -83,7 +83,7 @@ async function launchBrowser() { }, 5000); return; } - browser.on("disconnected", async () => { + browser.on("disconnected", async (): Promise<void> => { if (isShuttingDown) { logger.info( "The puppeteer browser got disconnected. But we're shutting down so won't restart it.", diff --git a/apps/workers/openaiWorker.ts b/apps/workers/openaiWorker.ts index 9e6cd553..5f785f2f 100644 --- a/apps/workers/openaiWorker.ts +++ b/apps/workers/openaiWorker.ts @@ -41,7 +41,7 @@ async function attemptMarkTaggingStatus( } export class OpenAiWorker { - static async build() { + static build() { logger.info("Starting openai worker ..."); const worker = new Worker<ZOpenAIRequest, void>( OpenAIQueue.name, @@ -52,14 +52,14 @@ export class OpenAiWorker { }, ); - worker.on("completed", async (job) => { - const jobId = job?.id || "unknown"; + worker.on("completed", async (job): Promise<void> => { + const jobId = job?.id ?? "unknown"; logger.info(`[openai][${jobId}] Completed successfully`); await attemptMarkTaggingStatus(job?.data, "success"); }); - worker.on("failed", async (job, error) => { - const jobId = job?.id || "unknown"; + worker.on("failed", async (job, error): Promise<void> => { + const jobId = job?.id ?? "unknown"; logger.error(`[openai][${jobId}] openai job failed: ${error}`); await attemptMarkTaggingStatus(job?.data, "failure"); }); @@ -152,7 +152,7 @@ async function inferTagsFromImage( const base64 = asset.toString('base64'); const chatCompletion = await openai.chat.completions.create({ - model: "gpt-4-vision-preview", + model: serverConfig.inference.imageModel, messages: [ { role: "user", @@ -185,7 +185,7 @@ async function inferTagsFromText( ) { const chatCompletion = await openai.chat.completions.create({ messages: [{ role: "system", content: buildPrompt(bookmark) }], - model: "gpt-3.5-turbo-0125", + model: serverConfig.inference.textModel, response_format: { type: "json_object" }, }); @@ -290,11 +290,11 @@ async function connectTags( } async function runOpenAI(job: Job<ZOpenAIRequest, void>) { - const jobId = job.id || "unknown"; + const jobId = job.id ?? "unknown"; - const { openAI } = serverConfig; + const { inference } = serverConfig; - if (!openAI.apiKey) { + if (!inference.openAIApiKey) { logger.debug( `[openai][${jobId}] OpenAI is not configured, nothing to do now`, ); @@ -302,7 +302,7 @@ async function runOpenAI(job: Job<ZOpenAIRequest, void>) { } const openai = new OpenAI({ - apiKey: openAI.apiKey, + apiKey: inference.openAIApiKey, }); const request = zOpenAIRequestSchema.safeParse(job.data); |
