mirror of
https://github.com/Wei-Shaw/claude-relay-service.git
synced 2026-01-23 09:06:18 +00:00
fix: Gemini原生接口没获取到modelName #295
This commit is contained in:
@@ -50,7 +50,7 @@ router.post('/messages', authenticateApiKey, async (req, res) => {
|
|||||||
// 提取请求参数
|
// 提取请求参数
|
||||||
const {
|
const {
|
||||||
messages,
|
messages,
|
||||||
model = 'gemini-2.0-flash-exp',
|
model = 'gemini-2.5-flash',
|
||||||
temperature = 0.7,
|
temperature = 0.7,
|
||||||
max_tokens = 4096,
|
max_tokens = 4096,
|
||||||
stream = false
|
stream = false
|
||||||
@@ -217,7 +217,7 @@ router.get('/models', authenticateApiKey, async (req, res) => {
|
|||||||
object: 'list',
|
object: 'list',
|
||||||
data: [
|
data: [
|
||||||
{
|
{
|
||||||
id: 'gemini-2.0-flash-exp',
|
id: 'gemini-2.5-flash',
|
||||||
object: 'model',
|
object: 'model',
|
||||||
created: Date.now() / 1000,
|
created: Date.now() / 1000,
|
||||||
owned_by: 'google'
|
owned_by: 'google'
|
||||||
@@ -311,8 +311,8 @@ async function handleLoadCodeAssist(req, res) {
|
|||||||
try {
|
try {
|
||||||
const sessionHash = sessionHelper.generateSessionHash(req.body)
|
const sessionHash = sessionHelper.generateSessionHash(req.body)
|
||||||
|
|
||||||
// 使用统一调度选择账号(传递请求的模型)
|
// 从路径参数或请求体中获取模型名
|
||||||
const requestedModel = req.body.model
|
const requestedModel = req.body.model || req.params.modelName || 'gemini-2.5-flash'
|
||||||
const { accountId } = await unifiedGeminiScheduler.selectAccountForApiKey(
|
const { accountId } = await unifiedGeminiScheduler.selectAccountForApiKey(
|
||||||
req.apiKey,
|
req.apiKey,
|
||||||
sessionHash,
|
sessionHash,
|
||||||
@@ -368,8 +368,8 @@ async function handleOnboardUser(req, res) {
|
|||||||
const { tierId, cloudaicompanionProject, metadata } = req.body
|
const { tierId, cloudaicompanionProject, metadata } = req.body
|
||||||
const sessionHash = sessionHelper.generateSessionHash(req.body)
|
const sessionHash = sessionHelper.generateSessionHash(req.body)
|
||||||
|
|
||||||
// 使用统一调度选择账号(传递请求的模型)
|
// 从路径参数或请求体中获取模型名
|
||||||
const requestedModel = req.body.model
|
const requestedModel = req.body.model || req.params.modelName || 'gemini-2.5-flash'
|
||||||
const { accountId } = await unifiedGeminiScheduler.selectAccountForApiKey(
|
const { accountId } = await unifiedGeminiScheduler.selectAccountForApiKey(
|
||||||
req.apiKey,
|
req.apiKey,
|
||||||
sessionHash,
|
sessionHash,
|
||||||
@@ -439,7 +439,9 @@ async function handleCountTokens(req, res) {
|
|||||||
try {
|
try {
|
||||||
// 处理请求体结构,支持直接 contents 或 request.contents
|
// 处理请求体结构,支持直接 contents 或 request.contents
|
||||||
const requestData = req.body.request || req.body
|
const requestData = req.body.request || req.body
|
||||||
const { contents, model = 'gemini-2.0-flash-exp' } = requestData
|
const { contents } = requestData
|
||||||
|
// 从路径参数或请求体中获取模型名
|
||||||
|
const model = requestData.model || req.params.modelName || 'gemini-2.5-flash'
|
||||||
const sessionHash = sessionHelper.generateSessionHash(req.body)
|
const sessionHash = sessionHelper.generateSessionHash(req.body)
|
||||||
|
|
||||||
// 验证必需参数
|
// 验证必需参数
|
||||||
@@ -487,7 +489,9 @@ async function handleCountTokens(req, res) {
|
|||||||
// 共用的 generateContent 处理函数
|
// 共用的 generateContent 处理函数
|
||||||
async function handleGenerateContent(req, res) {
|
async function handleGenerateContent(req, res) {
|
||||||
try {
|
try {
|
||||||
const { model, project, user_prompt_id, request: requestData } = req.body
|
const { project, user_prompt_id, request: requestData } = req.body
|
||||||
|
// 从路径参数或请求体中获取模型名
|
||||||
|
const model = req.body.model || req.params.modelName || 'gemini-2.5-flash'
|
||||||
const sessionHash = sessionHelper.generateSessionHash(req.body)
|
const sessionHash = sessionHelper.generateSessionHash(req.body)
|
||||||
|
|
||||||
// 处理不同格式的请求
|
// 处理不同格式的请求
|
||||||
@@ -610,7 +614,9 @@ async function handleStreamGenerateContent(req, res) {
|
|||||||
let abortController = null
|
let abortController = null
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const { model, project, user_prompt_id, request: requestData } = req.body
|
const { project, user_prompt_id, request: requestData } = req.body
|
||||||
|
// 从路径参数或请求体中获取模型名
|
||||||
|
const model = req.body.model || req.params.modelName || 'gemini-2.5-flash'
|
||||||
const sessionHash = sessionHelper.generateSessionHash(req.body)
|
const sessionHash = sessionHelper.generateSessionHash(req.body)
|
||||||
|
|
||||||
// 处理不同格式的请求
|
// 处理不同格式的请求
|
||||||
|
|||||||
Reference in New Issue
Block a user