Skip to content

Commit 98e239b

Browse files
committed
refactor: add openrouter ranker for tianji
1 parent 5c5a568 commit 98e239b

File tree

2 files changed

+23
-1
lines changed

2 files changed

+23
-1
lines changed

src/server/model/aiGateway.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { buildQueryWithCache } from '../cache/index.js';
22
import { prisma } from './_client.js';
3-
import { type RequestHandler } from 'express';
3+
import { type RequestHandler, type Request } from 'express';
44
import { calcMessagesToken, calcOpenAIToken } from '../model/openai.js';
55
import { z } from 'zod';
66
import OpenAI from 'openai';
@@ -45,6 +45,7 @@ interface OpenaiHandlerOptions {
4545
modelProvider?: string;
4646
modelPriceName?: (model: string) => string;
4747
isCustomRoute?: boolean;
48+
header?: (req: Request) => Record<string, string>;
4849
}
4950

5051
export function buildOpenAIHandler(
@@ -106,6 +107,7 @@ export function buildOpenAIHandler(
106107
const openai = new OpenAI({
107108
apiKey: modelApiKey,
108109
baseURL: baseUrl,
110+
defaultHeaders: options.header?.(req),
109111
});
110112
const modelProvider = options.modelProvider ?? 'openai';
111113
const modelPriceName = options.modelPriceName

src/server/router/aiGateway.ts

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,16 @@ aiGatewayRouter.post(
3131
buildOpenAIHandler({
3232
baseUrl: 'https://openrouter.ai/api/v1',
3333
modelProvider: 'openrouter',
34+
header: (req) => {
35+
return {
36+
'HTTP-Referer': req.headers['HTTP-Referer']
37+
? String(req.headers['HTTP-Referer'])
38+
: 'https://tianji.dev/',
39+
'X-Title': req.headers['X-Title']
40+
? String(req.headers['X-Title'])
41+
: 'Tianji',
42+
};
43+
},
3444
})
3545
);
3646

@@ -70,6 +80,16 @@ aiGatewayRouter.post(
7080
buildOpenAIHandler({
7181
baseUrl: 'https://openrouter.ai/api/v1',
7282
modelProvider: 'openrouter',
83+
header: (req) => {
84+
return {
85+
'HTTP-Referer': req.headers['HTTP-Referer']
86+
? String(req.headers['HTTP-Referer'])
87+
: 'https://tianji.dev/',
88+
'X-Title': req.headers['X-Title']
89+
? String(req.headers['X-Title'])
90+
: 'Tianji',
91+
};
92+
},
7393
})
7494
);
7595

0 commit comments

Comments
 (0)