coze-discord-proxy icon indicating copy to clipboard operation
coze-discord-proxy copied to clipboard

对话隔离功能咨询

Open suyunkai opened this issue 1 year ago • 13 comments

想问一下,现在如果使用v1接口请求,会话隔离需要手动指定频道id实现么?能否根据v1接口请求参数,自动实现会话隔离。

suyunkai avatar Jan 29 '24 03:01 suyunkai

可以的 会在v1接口中增加字段channelid 有的话会发送到指定的频道中 字段为空则发送至环境变量中设置的默认频道中

deanxv avatar Jan 29 '24 04:01 deanxv

但如果想指定频道的话,可以使用项目自有对话接口api/chat

deanxv avatar Jan 29 '24 04:01 deanxv

可以的 会在v1接口中增加字段channelid 有的话会发送到指定的频道中 字段为空则发送至环境变量中设置的默认频道中

我接入到了one-api还能进行对话隔离吗? 容易串啊

Passerby1011 avatar Jan 29 '24 05:01 Passerby1011

可以的 会在v1接口中增加字段channelid 有的话会发送到指定的频道中 字段为空则发送至环境变量中设置的默认频道中

我接入到了one-api还能进行对话隔离吗?

容易串啊

目前对于openai对齐接口做不到完美的对话隔离,官方接口是通过每次都传递了上下文,但discord的上下文是读取的频道聊天记录,实现对话隔离很有难度。 如果想基于本项目实现对话隔离,只能用api/chat或v1接口传递频道id,那这个接口仅能用在你自己程序中特殊处理,用不了one api或 nextChat这种严格对齐openai的接口程序中。

deanxv avatar Jan 29 '24 05:01 deanxv

可以的 会在v1接口中增加字段channelid 有的话会发送到指定的频道中 字段为空则发送至环境变量中设置的默认频道中

我接入到了one-api还能进行对话隔离吗? 容易串啊

目前对于openai对齐接口做不到完美的对话隔离,官方接口是通过每次都传递了上下文,但discord的上下文是读取的频道聊天记录,实现对话隔离很有难度。 如果想基于本项目实现对话隔离,只能用api/chat或v1接口传递频道id,那这个接口仅能用在你自己程序中特殊处理,用不了one api或 nextChat这种严格对齐openai的接口程序中。

现在是如果想会话隔离必须手动指定频道是吧即便是api/chat接口也是需要手动指定channelid是吧,那这个和v1/有什么区别呢?

Passerby1011 avatar Jan 29 '24 05:01 Passerby1011

可以的 会在v1接口中增加字段channelid 有的话会发送到指定的频道中 字段为空则发送至环境变量中设置的默认频道中

我接入到了one-api还能进行对话隔离吗? 容易串啊

目前对于openai对齐接口做不到完美的对话隔离,官方接口是通过每次都传递了上下文,但discord的上下文是读取的频道聊天记录,实现对话隔离很有难度。 如果想基于本项目实现对话隔离,只能用api/chat或v1接口传递频道id,那这个接口仅能用在你自己程序中特殊处理,用不了one api或 nextChat这种严格对齐openai的接口程序中。

现在是如果想会话隔离必须手动指定频道是吧即便是api/chat接口也是需要手动指定channelid是吧,那这个和v1/有什么区别呢?

是的,v1的接口地址和请求体返回值都是和openai基本保持一致的,请求体和返回值中有很多无用字段,并还要重新组装,所以本项目才可以集成在nextChat中,而api/chat是本项目中的自有对话接口,请求体和返回值无多余字段的。

deanxv avatar Jan 29 '24 05:01 deanxv

通过v1接入的大部分情况是没太有能力修改前端代码匹配api/chat接口的时候(包括我自己在内),并且现在现有的多数前端的使用逻辑,都是新建多个对话框使用,这样的话如果用v1接口,很大概率会发生串对话的问题。 不过解决这个问题确实难度很大,现在其它网站的逆向解决方案,通常是把上下文通过一次对话全部发给bot,但discord的单次输入长度仅有2000个字符,太少了,无法承载太多上下文。 所以这么看来,可能还是去修改前端匹配项目自有接口更合适一些。

suyunkai avatar Jan 29 '24 06:01 suyunkai

通过v1接入的大部分情况是没太有能力修改前端代码匹配api/chat接口的时候(包括我自己在内),并且现在现有的多数前端的使用逻辑,都是新建多个对话框使用,这样的话如果用v1接口,很大概率会发生串对话的问题。 不过解决这个问题确实难度很大,现在其它网站的逆向解决方案,通常是把上下文通过一次对话全部发给bot,但discord的单次输入长度仅有2000个字符,太少了,无法承载太多上下文。 所以这么看来,可能还是去修改前端匹配项目自有接口更合适一些。

是的 如果用openai对齐的接口的话目前确实没有完美的解决方案

deanxv avatar Jan 29 '24 06:01 deanxv

通过v1接入的大部分情况是没太有能力修改前端代码匹配api/chat接口的时候(包括我自己在内),并且现在现有的多数前端的使用逻辑,都是新建多个对话框使用,这样的话如果用v1接口,很大概率会发生串对话的问题。 不过解决这个问题确实难度很大,现在其它网站的逆向解决方案,通常是把上下文通过一次对话全部发给bot,但discord的单次输入长度仅有2000个字符,太少了,无法承载太多上下文。 所以这么看来,可能还是去修改前端匹配项目自有接口更合适一些。

不知道接入其他服务是否可行?比如slack,看了一下它message长度比discord要大得多。

xingty avatar Jan 30 '24 08:01 xingty

通过v1接入的大部分情况是没太有能力修改前端代码匹配api/chat接口的时候(包括我自己在内),并且现在现有的多数前端的使用逻辑,都是新建多个对话框使用,这样的话如果用v1接口,很大概率会发生串对话的问题。 不过解决这个问题确实难度很大,现在其它网站的逆向解决方案,通常是把上下文通过一次对话全部发给bot,但discord的单次输入长度仅有2000个字符,太少了,无法承载太多上下文。 所以这么看来,可能还是去修改前端匹配项目自有接口更合适一些。

不知道接入其他服务是否可行?比如slack,看了一下它message长度比discord要大得多。

没有用过slack,不知道slack有没有提供完善的api能实现对话隔离,文件上传,指定消息的回答等这种功能,有空了我去看下

deanxv avatar Jan 30 '24 11:01 deanxv

通过v1接入的大部分情况是没太有能力修改前端代码匹配api/chat接口的时候(包括我自己在内),并且现在现有的多数前端的使用逻辑,都是新建多个对话框使用,这样的话如果用v1接口,很大概率会发生串对话的问题。 不过解决这个问题确实难度很大,现在其它网站的逆向解决方案,通常是把上下文通过一次对话全部发给bot,但discord的单次输入长度仅有2000个字符,太少了,无法承载太多上下文。 所以这么看来,可能还是去修改前端匹配项目自有接口更合适一些。

不知道接入其他服务是否可行?比如slack,看了一下它message长度比discord要大得多。

没有用过slack,不知道slack有没有提供完善的api能实现对话隔离,文件上传,指定消息的回答等这种功能,有空了我去看下

其实像集成到nextchat这类服务上,对话隔离的功能都可以不要。在coze的bot上设置不要记住上下文,然后每次把nextchat的消息打包成完整的上下文发送到coze的机器人上,这样算是间接实现了隔离。我只是在slack的文档上粗略看了,它的message长度可以达到4w。

xingty avatar Jan 30 '24 12:01 xingty

通过v1接入的大部分情况是没太有能力修改前端代码匹配api/chat接口的时候(包括我自己在内),并且现在现有的多数前端的使用逻辑,都是新建多个对话框使用,这样的话如果用v1接口,很大概率会发生串对话的问题。 不过解决这个问题确实难度很大,现在其它网站的逆向解决方案,通常是把上下文通过一次对话全部发给bot,但discord的单次输入长度仅有2000个字符,太少了,无法承载太多上下文。 所以这么看来,可能还是去修改前端匹配项目自有接口更合适一些。

不知道接入其他服务是否可行?比如slack,看了一下它message长度比discord要大得多。

没有用过slack,不知道slack有没有提供完善的api能实现对话隔离,文件上传,指定消息的回答等这种功能,有空了我去看下

其实像集成到nextchat这类服务上,对话隔离的功能都可以不要。在coze的bot上设置不要记住上下文,然后每次把nextchat的消息打包成完整的上下文发送到coze的机器人上,这样算是间接实现了隔离。我只是在slack的文档上粗略看了,它的message长度可以达到4w。

你试过推送slack吗 我刚搞了半天 提示“Failed to verify the channel's credentials. Please check and try again.” slack的配置真的有够烧脑

deanxv avatar Jan 30 '24 13:01 deanxv

通过v1接入的大部分情况是没太有能力修改前端代码匹配api/chat接口的时候(包括我自己在内),并且现在现有的多数前端的使用逻辑,都是新建多个对话框使用,这样的话如果用v1接口,很大概率会发生串对话的问题。 不过解决这个问题确实难度很大,现在其它网站的逆向解决方案,通常是把上下文通过一次对话全部发给bot,但discord的单次输入长度仅有2000个字符,太少了,无法承载太多上下文。 所以这么看来,可能还是去修改前端匹配项目自有接口更合适一些。

不知道接入其他服务是否可行?比如slack,看了一下它message长度比discord要大得多。

没有用过slack,不知道slack有没有提供完善的api能实现对话隔离,文件上传,指定消息的回答等这种功能,有空了我去看下

其实像集成到nextchat这类服务上,对话隔离的功能都可以不要。在coze的bot上设置不要记住上下文,然后每次把nextchat的消息打包成完整的上下文发送到coze的机器人上,这样算是间接实现了隔离。我只是在slack的文档上粗略看了,它的message长度可以达到4w。

你试过推送slack吗 我刚搞了半天 提示“Failed to verify the channel's credentials. Please check and try again.” slack的配置真的有够烧脑

还没有试过,最近比较忙,我只是粗略看了下。这个项目的想法很有创意,看slack的描述message长度很大,如果能复刻一份slack的话,这个可用性就会大大提升了😂。

xingty avatar Jan 30 '24 13:01 xingty

最新镜像已实现会话隔离

deanxv avatar Feb 06 '24 08:02 deanxv