LLM-Red-Team / kimi-free-api

🚀 KIMI AI 长文本大模型逆向API白嫖测试【特长:长文本解读整理】,支持高速流式输出、智能体对话、联网搜索、长文档解读、图像OCR、多轮对话,零配置部署,多路token支持,自动清理会话痕迹。
https://udify.app/chat/Po0F6BMJ15q5vu2P
GNU General Public License v3.0
3.64k stars 585 forks source link

如何兼容openai的调用方法? #114

Closed JosenJin closed 3 months ago

JosenJin commented 3 months ago

如何兼容openai的调用方法? response = openai.chat.completions.create( model=self.model_name, messages=history, temperature=temperature, tools=tools, max_tokens=max_length, )

Vinlic commented 3 months ago

默认就兼容,只需要更改api base和api key即可

JosenJin commented 3 months ago

下面是openai的调用,貌似不可以呀,返回是none,我写的不对吗? response = openai.chat.completions.create( model=self.model_name, messages=history, temperature=temperature, tools=tools, max_tokens=max_length, )

JosenJin commented 3 months ago

用openai的调用方式就会返回这些

ChatCompletion(id=None, choices=None, created=None, model=None, object=None, system_fingerprint=None, usage=None, code=-2001, message='请求失败', data=None)

Vinlic commented 3 months ago

这代表你的refresh_token错误

JosenJin commented 3 months ago

Bearer eyJhbGciOiJIUzUxMiI。。。。。我用api方式可以的,就是用同样的token,难道不用加Bearer ?

JosenJin commented 3 months ago

是不是没有这个两个参数呀?这两个参数如何放进去?

// 是否开启联网搜索,默认false "use_search": true, // 如果使用SSE流请设置为true,默认false "stream": false

Vinlic commented 3 months ago

refresh token不需要加上Bearer ,那个是Authorization头才需要加的

JosenJin commented 3 months ago

问题是这个open ai的标准调用方式如何兼容呀?tools可以吗?麻烦给指导下? response = openai.chat.completions.create( model=self.model_name, messages=history, temperature=temperature, tools=tools, max_tokens=max_length, )

Vinlic commented 3 months ago

不需要如何兼容,默认就兼容,tools不用加

JosenJin commented 3 months ago

您能不能帮忙写一个python调用openai标准的方式?我怎么试都是报错。。。另外我想加tools就是外部api tools怎么加?跪谢!

response = openai.chat.completions.create( model=self.model_name, messages=history, temperature=temperature, tools=tools, max_tokens=max_length, )

Vinlic commented 3 months ago
from openai import OpenAI

os.environ["OPENAI_BASE_URL"] = "http://127.0.0.1:8000/v1"
os.environ["OPENAI_API_KEY"] = "eyJhbGciOiJIUzUxMiI..."
response = OpenAI().chat.completions.create(
    model="kimi",
    messages=[
        {"role": "user", "content": '你是谁'},
    ]
)

tools不用填,逆向也不会支持自定义工具调用,默认会使用官网的联网。