From cda7cd4d7d20c0bb8642c87e7c66d45ff4a328dd Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 12 Jan 2026 13:49:40 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E9=98=BF=E9=87=8C?= =?UTF-8?q?=E7=94=9F=E5=9B=BE=E6=A8=A1=E5=9E=8B=E7=9A=84=20provider=20?= =?UTF-8?q?=E8=AF=86=E5=88=AB=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 dynamic-provider.ts 中添加 alibaba-image 类型的专门处理 - 在 chat() 返回的对象中添加 provider 属性 - 确保 route.ts 能正确识别阿里生图模型并进入独立处理分支 --- docs/更新通知-2026年1月.md | 101 ++++++++++++++++++++++++++++++ lib/ai/dynamic-provider.ts | 5 ++ lib/ai/providers/alibaba-image.ts | 1 + 3 files changed, 107 insertions(+) create mode 100644 docs/更新通知-2026年1月.md diff --git a/docs/更新通知-2026年1月.md b/docs/更新通知-2026年1月.md new file mode 100644 index 0000000..5505fdd --- /dev/null +++ b/docs/更新通知-2026年1月.md @@ -0,0 +1,101 @@ +# 🎉 AI 助手更新通知 - 2026年1月 + +--- + +## 📸 新功能:3D 角度调整 + +### 功能介绍 + +我们新增了 **3D 角度调整** 功能,让您可以轻松改变图片中物体的视角角度。无论是产品展示、创意设计还是内容创作,都能获得更多样化的视觉效果。 + +### 主要特性 + +- 🎮 **直观的 3D 控制器** - 可视化调整水平角度、垂直角度和距离 +- 🔄 **多种预设角度** - 提供常用角度快速选择 +- 👁️ **实时预览** - 调整参数时即时查看效果 +- 💾 **一键保存** - 生成的图片自动保存到相册 + +### 使用方式 + +1. **在聊天界面**:点击任意图片下方的「角度调整」按钮 +2. **在图片编辑器**:工具栏中选择「角度调整」功能 +3. 使用 3D 控制器调整您想要的视角 +4. 点击「生成」按钮获取新角度的图片 + +### 角度参数说明 + +| 参数 | 范围 | 说明 | +|------|------|------| +| 水平角度 | -180° ~ 180° | 控制左右旋转视角 | +| 垂直角度 | -90° ~ 90° | 控制上下俯仰视角 | +| 距离 | 0.5x ~ 2.0x | 控制观察距离远近 | + +--- + +## 🖼️ 新模型:阿里千问图片编辑 + +### 模型介绍 + +我们集成了阿里云 **千问图片编辑模型 (Qwen Image Edit Plus)**,这是一款强大的 AI 图片编辑模型,支持多种图片编辑操作。 + +### 主要能力 + +- ✏️ **智能图片编辑** - 根据文字描述修改图片内容 +- 🎨 **风格转换** - 改变图片的艺术风格 +- 🔀 **多图融合** - 将多张图片元素智能融合 +- 📐 **多种尺寸** - 支持 1K、2K、4K 等多种输出分辨率 + +### 使用方式 + +1. 在模型选择器中选择「千问图片编辑」模型 +2. 上传一张或多张图片 +3. 输入您想要的编辑指令 +4. 等待 AI 生成编辑后的图片 + +### 使用示例 + +``` +📷 上传一张沙发图片 +💬 "将沙发的颜色改成深蓝色" +``` + +``` +📷 上传一张人物照片 +💬 "将背景改成海边日落" +``` + +``` +📷 上传两张图片(人物 + 场景) +💬 "将人物放到这个场景中" +``` + +### 注意事项 + +> ⚠️ **重要提示**:千问图片编辑模型是**图片编辑**模型,需要至少上传一张图片才能使用。如需纯文字生成图片,请使用其他生图模型。 + +### 参数配置 + +| 参数 | 说明 | 默认值 | +|------|------|--------| +| 生成数量 | 一次生成 1-6 张图片 | 1 | +| 输出尺寸 | 支持 1K/2K/4K 等 | 2K | +| 提示词扩展 | AI 自动优化提示词 | 开启 | + +--- + +## 🔧 其他优化 + +- 优化了图片加载动画效果 +- 改进了错误提示信息,更加友好易懂 +- 提升了图片处理的稳定性 + +--- + +## 📞 反馈与支持 + +如果您在使用过程中遇到任何问题,或有功能建议,欢迎随时反馈! + +--- + +*更新日期:2026年1月12日* + diff --git a/lib/ai/dynamic-provider.ts b/lib/ai/dynamic-provider.ts index c172f21..b39a0ca 100644 --- a/lib/ai/dynamic-provider.ts +++ b/lib/ai/dynamic-provider.ts @@ -197,6 +197,11 @@ export async function getDynamicModel( console.log("[getDynamicModel] Getting Volcano Vision chat model..."); // 调试日志 baseModel = providerInstance.chat(model.modelId); console.log("[getDynamicModel] Volcano Vision model retrieved:", baseModel ? "success" : "failed"); // 调试日志 + } else if (provider.type === "alibaba-image") { + // 阿里云千问图片生成使用 chat() 方法 + console.log("[getDynamicModel] Getting Alibaba Image chat model..."); // 调试日志 + baseModel = providerInstance.chat(model.modelId); + console.log("[getDynamicModel] Alibaba Image model retrieved:", baseModel ? "success" : "failed"); // 调试日志 } else { // OpenAI-compatible providers console.log("[getDynamicModel] Getting OpenAI-compatible model..."); // 调试日志 diff --git a/lib/ai/providers/alibaba-image.ts b/lib/ai/providers/alibaba-image.ts index 6c81b5b..57e923a 100644 --- a/lib/ai/providers/alibaba-image.ts +++ b/lib/ai/providers/alibaba-image.ts @@ -283,6 +283,7 @@ export function createAlibabaImage({ apiKey, baseURL }: AlibabaImageConfig) { provider: "alibaba-image", chat: (modelId: string) => ({ + provider: "alibaba-image", // 🆕 让 chat() 返回的对象也包含 provider 属性,用于 route.ts 中的类型判断 doGenerate: async (options: { messages: Array<{ role: string; content: string | Array<{ type: string; text?: string; image?: string }> }>; imageParams?: AlibabaImageParams & { aspectRatio?: string; imageSize?: string; imageCount?: number };