This commit is contained in:
overcuriousity
2025-07-25 23:50:30 +02:00
parent fbe8d4d4e1
commit 1419f64ab9
3 changed files with 119 additions and 24 deletions

View File

@@ -1,8 +1,9 @@
// src/pages/api/ai/query.ts (MINIMAL CHANGES - Preserves exact original behavior)
// src/pages/api/ai/query.ts
import type { APIRoute } from 'astro';
import { withAPIAuth } from '../../../utils/auth.js';
import { getCompressedToolsDataForAI } from '../../../utils/dataService.js';
import { apiError, apiServerError, createAuthErrorResponse } from '../../../utils/api.js'; // ONLY import specific helpers we use
import { apiError, apiServerError, createAuthErrorResponse } from '../../../utils/api.js';
import { enqueueApiCall } from '../../../utils/rateLimitedQueue.js';
export const prerender = false;
@@ -316,29 +317,30 @@ export const POST: APIRoute = async ({ request }) => {
? createWorkflowSystemPrompt(toolsData)
: createToolSystemPrompt(toolsData);
// AI API call (UNCHANGED)
const aiResponse = await fetch(process.env.AI_API_ENDPOINT + '/v1/chat/completions', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${process.env.AI_API_KEY}`
},
body: JSON.stringify({
model: AI_MODEL,
messages: [
{
role: 'system',
content: systemPrompt
},
{
role: 'user',
content: sanitizedQuery
}
],
max_tokens: 2000,
temperature: 0.3
const aiResponse = await enqueueApiCall(() =>
fetch(process.env.AI_API_ENDPOINT + '/v1/chat/completions', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${process.env.AI_API_KEY}`
},
body: JSON.stringify({
model: AI_MODEL,
messages: [
{
role: 'system',
content: systemPrompt
},
{
role: 'user',
content: sanitizedQuery
}
],
max_tokens: 2000,
temperature: 0.3
})
})
});
);
// AI response handling (ONLY CHANGE: Use helpers for error responses)
if (!aiResponse.ok) {