AiService 服务面:工厂 → 10 个服务接口

AiService 服务面:工厂 → 10 个服务接口 由 Archify 生成的架构图。 宿主调用方 · 业务代码 / Starter · 架构组件 宿主调用方 业务代码 / Starter Configuration · api-key/base-url · 架构组件 Configuration api-key/base-url FreeAiService · Registry 按 id 路由 · 架构组件 FreeAiService Registry 按 id 路由 AiService · getXxxService(platform) · 架构组件 · core AiService getXxxService(platform) core Chat · 12 平台 · 10 个服务接口 = 全部能力面 · 各按 PlatformType switch 到 platform.<name>.*Service 实现 Chat 12 平台 Responses · 3 平台 · 10 个服务接口 = 全部能力面 · 各按 PlatformType switch 到 platform.<name>.*Service 实现 Responses 3 平台 Messages · Anthropic · 10 个服务接口 = 全部能力面 · 各按 PlatformType switch 到 platform.<name>.*Service 实现 Messages Anthropic Embed · OpenAI·Ollama · 10 个服务接口 = 全部能力面 · 各按 PlatformType switch 到 platform.<name>.*Service 实现 Embed OpenAI·Ollama Rerank · Jina·Ollama·Ds · 10 个服务接口 = 全部能力面 · 各按 PlatformType switch 到 platform.<name>.*Service 实现 Rerank Jina·Ollama·Ds Image · OpenAI·Doubao · 10 个服务接口 = 全部能力面 · 各按 PlatformType switch 到 platform.<name>.*Service 实现 Image OpenAI·Doubao Video · 5 平台 · 10 个服务接口 = 全部能力面 · 各按 PlatformType switch 到 platform.<name>.*Service 实现 Video 5 平台 Audio · OpenAI · 10 个服务接口 = 全部能力面 · 各按 PlatformType switch 到 platform.<name>.*Service 实现 Audio OpenAI Music · Suno · 10 个服务接口 = 全部能力面 · 各按 PlatformType switch 到 platform.<name>.*Service 实现 Music Suno Realtime · OpenAI · 10 个服务接口 = 全部能力面 · 各按 PlatformType switch 到 platform.<name>.*Service 实现 Realtime OpenAI 检索增强包装 · ChatWithWebSearchEnhance · 架构组件 检索增强包装 ChatWithWebSearchEnhance ① 取服务 ② 注入配置 ③ id→platform ④ 包装增强 10 个服务接口 = 全部能力面 · 各按 PlatformType switch 到 platform.<name>.*Service 实现

工厂与注册表

  • • AiService.getXxxService(platform) 每次 new 具体实现(无缓存);未知平台抛 IllegalArgumentException
  • • FreeAiService.getChatService(id) 经 AiServiceRegistry→registration 携带 PlatformType 路由

平台支持度矩阵

  • • Chat 最广 12 平台;Responses 3 家;Messages/Audio/Music/Realtime 各仅 1 家原生实现
  • • Video 5 家(OpenAI/Grok/Minimax/Seedance/Agnes);Embedding 2 家;Rerank 3 家(Jina/Ollama/Doubao)

增强与组装

  • • webSearchEnhance(chatService) 把 ChatWithWebSearchEnhance 包在原服务外:检索结果先并入请求
  • • getRagService/getIngestionPipeline/getModelReranker 在同工厂内组装 DenseRetriever/Reranker 等复合件