Closed li5bo5 closed 7 months ago
好想法,加入一个中间层,可以根据不同大模型的优点来开启一个融合应用,更符合用户需求特色的复合型“智能体”
因为每次切换模型,都要重启项目,而重启项目要用到电脑、所以如果不能在微信中切换模型的话,就必须搭配电脑才能使用该项目。。。是不是略麻烦。。。如果可以切换,那就可以一次部署,永久使用了,
我用xinference加载的本地模型,cow不用重启,直接引用xin提供的api,我在xinfernce里任意切换模型,cow就自动引用 了。你可以git上搜一搜它
我用xinference加载的本地模型,cow不用重启,直接引用xin提供的api,我在xinfernce里任意切换模型,cow就自动引用 了。你可以git上搜一搜它
门槛有点高🤣🤣🤣
我用xinference加载的本地模型,cow不用重启,直接引用xin提供的api,我在xinfernce里任意切换模型,cow就自动引用 了。你可以git上搜一搜它
比如出差、旅游、在外地。。想切换模型就很麻烦
我的做法是:oneapi 项目+ 提示词指令。oneapi项目提供了OpenAI格式的统一调用接口,这样在程序使用不同模型的时候就不需要根据模型文档去写不同的接口bot,只需要通过提示词指令切换不同的模型名称就好了。
我的做法是:oneapi 项目+ 提示词指令。oneapi项目提供了OpenAI格式的统一调用接口,这样在程序使用不同模型的时候就不需要根据模型文档去写不同的接口bot,只需要通过提示词指令切换不同的模型名称就好了。
请问具体是是怎么操作的呢?one api我已经弄好了,渠道里面也添加了,在令牌里面业生成了令牌, 意思就是我在[chatgpt-on-wechat]项目的api里面,只需要填入生成的令牌?? 那么提示词指令怎么设置呢?求大佬指导
oneapi生成的令牌作为open_ai_api_key,然后oneapi的网址+v1作为open_ai_api_base。 提示词指令需要修改代码,可以自由发挥,参考如下:
# chat_gpt_bot.py
# OpenAI对话模型API (可用)
class ChatGPTBot(Bot, OpenAIImage):
....
def reply(self, query, context=None):
# acquire reply content
if context.type == ContextType.TEXT:
logger.info("[CHATGPT] query={}".format(query))
session_id = context["session_id"]
reply = None
clear_memory_commands = conf().get("clear_memory_commands", ["#清除记忆"])
if query in clear_memory_commands:
self.sessions.clear_session(session_id)
reply = Reply(ReplyType.INFO, "记忆已清除")
elif query == "#清除所有":
self.sessions.clear_all_session()
reply = Reply(ReplyType.INFO, "所有人记忆已清除")
elif query == "#更新配置":
load_config()
reply = Reply(ReplyType.INFO, "配置已更新")
if reply:
return reply
session = self.sessions.session_query(query, session_id)
logger.debug("[CHATGPT] session query={}".format(session.messages))
api_key = context.get("openai_api_key")
model = context.get("gpt_model")
''' 这里插入你的模型提示词指令解析 '''
models_map = {
"/GPT3.5": "gpt-3.5-turbo",
"/GPT4": "gpt-4",
"/xfxh": "讯飞星火",
# 以此类推,模型名称要跟oneapi里匹配
}
for cmd in models_map:
if query.startswith(cmd):
model = models_map[cmd]
query = query.lstrip(cmd)
break
''' 这里插入你的模型提示词指令解析 '''
new_args = None
if model:
new_args = self.args.copy()
new_args["model"] = model
搞定了吗
搞定了吗
目前用管理员命令切换的,不用重启项目:
……
⚠️ 搜索是否存在类似issue
总结
因为现在很多人都不止一个平台有账户, 多个平台希望可以支持快速切换, 可以在json中添加多个平台的配置信息, 输入平台的/命令 就可以直接在微信对话中切换平台。
举例
比如: 输入/wxyy 就调用文心一言的 输入/tyqw就调用通义千问的 .... 这样快速切换,可玩性就高了很多 /GPT3.5 /GPT4.0 /Claude /WXYY /XFXH /TYQW /Gemini /GLM-4 /LinkAI
动机
/更好用!!!