【求助】 chat2api怎么分辨是哪个conversation

我搭了一个chatNextweb, 我看它请求接口的内容是

{
    "messages":
    [
        {
            "role": "user",
            "content": "第一句 "
        },
        {
            "role": "assistant",
            "content": "您好!请问您需要什么样的帮助呢?"
        },
        {
            "role": "user",
            "content": "第二句"
        },
        {
            "role": "assistant",
            "content": "很抱歉,但您只提供了\"第二句\"这个短语,我无法理解您想表达的意思。请您提供更多的上下文或信息,这样我才能更好地帮助您。"
        },
        {
            "role": "user",
            "content": "第三句"
        },
        {
            "role": "assistant",
            "content": "抱歉,你的请求不够清晰。请提供更多上下文或详细说明你需要什么样的第三句回复。"
        },
        {
            "role": "user",
            "content": "使用四到五个字直接返回这句话的简要主题,不要解释、不要标点、不要语气词、不要多余文本,不要加粗,如果没有主题,请直接返回“闲聊”"
        }
    ],
    "model": "gpt-3.5-turbo",
    "temperature": 0.5,
    "presence_penalty": 0,
    "frequency_penalty": 0,
    "top_p": 1
}

chatgpt 聊天需要传入conversation_id 和 parent_message_id。 这个可以获取到
但是chatNextweb并没有传任何id的东西, 那我怎么区分它的conversation_id呢。

4 个赞

你多建几个话题请求看看

2 个赞

每一个话题payload都是这个格式。

{
    "messages":
    [
        {
            "role": "system",
            "content": "\nYou are ChatGPT, a large language model trained by OpenAI.\nKnowledge cutoff: 2021-09\nCurrent model: gpt-3.5-turbo\nCurrent time: 2024/4/1 13:10:46\nLatex inline: $x^2$ \nLatex block: $$e=mc^2$$\n\n"
        },
        {
            "role": "user",
            "content": "你好"
        }
    ],
    "stream": true,
    "model": "gpt-3.5-turbo",
    "temperature": 0.5,
    "presence_penalty": 0,
    "frequency_penalty": 0,
    "top_p": 1
}
1 个赞

@neo help

1 个赞

每一次请求都是新的,你的 payload 带了所有的 chat 记录。

1 个赞

这个我知道, 用payload 当key 去找conversation_id 吗。
感觉不是很靠谱

1 个赞

你说的conversation_id 和 parent_message_id,是网页版聊天才有的参数,api 调用是没有的,你是打算web2api ?

1 个赞

是的。

1 个赞

随机生成吧,以前始皇pandora第一次对话的id也是随机生成的,api 调用是无关上下文、独立的,只能每次都当成第一次处理了

1 个赞

对, 所以看有什么方案连续对话

1 个赞

这个是completion接口吧,不是conversation,所以没有conversion_id

1 个赞

别管它连不连续啊,不能生成 id 后把上下文都塞 messages 里吗

1 个赞

我记得始皇之前好像说过,只放开了completion接口

1 个赞

可以, 我试试。谢谢

1 个赞