AI 重塑云原生应用开发实战
邢云阳
联通云 AI 与容器技术专家
1040 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已更新 23 讲/共 28 讲
第五章:AI 微服务——云原生 API 网关到 AI 网关的蜕变 (5讲)
AI 重塑云原生应用开发实战
15
15
1.0x
00:00/00:00
登录|注册

22|实践:用Wasm实现AI Proxy

你好,我是邢云阳。
在前面的几节课中,我从 Wasm 的理论和实践两个角度,为你介绍了 Wasm。核心知识点实际上就是两块,一是 Wasm 的原理,二就是如何用 Wasm Go SDK 编写 Wasm 程序。对于原理,感兴趣的话你可以详细了解一下,而对于如何写 Wasm 程序,参考上节课的例子学会套路即可,后面用到哪个工具函数可以随时查文档。
在上节课的例子中,我们用到过 AI Proxy 这个插件,主要是为了能以网关 URL + OpenAI 协议的方式请求大模型。因为我们知道现在市面上无论是商业模型还是开源模型,基本大多都会遵循 OpenAI 标准,但每家厂商的 Base_Url 不一样,因此如果能有一个插件帮我们做好适配,让我们无论使用什么模型时,都可以以标准 OpenAI 格式请求,就会很方便。
因此本节课,我就用最近比较火的 DeepSeek 模型为例,带你写一下 AI Proxy 程序。

总体架构

我们先来了解一下 AI Proxy 的总体架构原理。
从前面的课程中,我们已经了解到,Wasm 插件是如何在一次完整的 HTTP 请求中起作用的。简单来说,它主要在四个阶段介入:RequestHeader、RequestBody、ResponseHeader 和 ResponseBody。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
  • 解释
  • 总结

1. Wasm插件在HTTP请求的四个阶段中起作用,包括RequestHeader、RequestBody、ResponseHeader和ResponseBody。 2. AI Proxy插件通过provider接口定义了一组接口,通过多态的方式由各大模型厂商具体实现,完成OpenAI格式与各自协议之间的相互转换。 3. 参数配置使用了ParseOverrideConfigBy方法,确保了配置的灵活性和优先级,同时也避免了配置冲突或遗漏的问题。 4. 在onHttpRequestHeader阶段,主要工作内容是替换URL和Header信息,实现了对Path、Host等信息的替换,并添加了Authorization信息。 5. onHttpRequestBody阶段处理请求体的内容,支持配置上下文的功能,遍历上下文,添加到请求体的messages中去。 6. onHttpResponseHeaders阶段通常情况下无需额外处理,除非返回的响应头中包含了OpenAI不支持的字段,这时才需要对这些字段进行移除或调整。 7. 在onHttpResponseBody阶段,主要任务是将其他厂商模型的API响应格式转换为OpenAI格式,通过代码示例展示了如何将Claude的响应格式转换为OpenAI格式。 8. 介绍了AI Proxy插件的核心原理和新增DeepSeek模型代理的实践,帮助理解其工作机制和实现方式。 9. 提及AI Proxy支持failover特性,即可以为大模型配置多个APIToken,当其不可用时,会移出APIToken列表。 10. 讨论了AI Proxy在商业化中的应用,以及未来可能的演示内容。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《AI 重塑云原生应用开发实战》
新⼈⾸单¥59
立即购买
登录 后留言

精选留言

由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论
显示
设置
留言
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部
文章页面操作
MAC
windows
作用
esc
esc
退出沉浸式阅读
shift + f
f11
进入/退出沉浸式
command + ⬆️
home
滚动到页面顶部
command + ⬇️
end
滚动到页面底部
⬅️ (仅针对订阅)
⬅️ (仅针对订阅)
上一篇
➡️ (仅针对订阅)
➡️ (仅针对订阅)
下一篇
command + j
page up
向下滚动一屏
command + k
page down
向上滚动一屏
p
p
音频播放/暂停
j
j
向下滚动一点
k
k
向上滚动一点
空格
空格
向下滚动一屏
播放器操作
MAC
windows
作用
esc
esc
退出全屏
⬅️
⬅️
快退
➡️
➡️
快进
空格
空格
视频播放/暂停(视频全屏时生效)