V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xhf1024
V2EX  ›  Java

各位大佬如何用 Java 实现 chatgpt 接口的流式返回,逐句回答

  •  
  •   xhf1024 · 353 天前 · 4951 次点击
    这是一个创建于 353 天前的主题,其中的信息可能已经有所发展或是发生改变。

    postman 调用 openai 的接口是一次性返回的流数据要得等好久,使用基于 Python3.10 的 Tornado 异步非阻塞框架来实现 Server-sent events 通信是可以,但是 java 不知道怎么实现

    16 条回复    2023-08-22 09:57:37 +08:00
    yazinnnn
        1
    yazinnnn  
       353 天前 via Android
    随便一个 reactive 的客户端都可以吧,比如 reactor vertx mutiny 之类的
    brader
        2
    brader  
       353 天前
    对了,提醒你一点我踩过的坑,你测试的时候最好不要用 postman 测试,即使你的是流式输出接口,它也会等全部数据回来。
    你最好用命令行测试,或者用浏览器测试,浏览器测试加响应头
    Content-Type: text/event-stream // 以事件流的形式告知浏览器进行显示
    Cache-Control: no-cache // 告知浏览器不进行缓存
    X-Accel-Buffering: no // 关闭 nginx 之类的缓存
    brader
        3
    brader  
       353 天前
    下面是我用 php 实现的流式输出,并简单的解析出了 EventSource 消息,只把结果返回给前端,可以给你参考
    qiyuey
        4
    qiyuey  
       353 天前
    我用的 kotlin flow
    ByteCat
        5
    ByteCat  
       353 天前
    我用 JS 写的,rx.js 的 observable ,貌似 Java 也有,可以试试?不过我不是很熟悉 Java 。
    你的 postman 不是最新的吧,我试了 postman 可以接受 POST 请求的 SSE ,并且是流式传输的。
    TWorldIsNButThis
        6
    TWorldIsNButThis  
       353 天前 via iPhone
    flow ?
    java 9 加的那个
    然后用 spring webflux
    以前一直不知道这类技术有什么实际应用场景,近来才知道原来 chatgpt 在用这个
    zoharSoul
        7
    zoharSoul  
       353 天前
    netty
    unco020511
        8
    unco020511  
       353 天前
    K1W1
        9
    K1W1  
       353 天前 via iPhone
    oldshensheep
        10
    oldshensheep  
       353 天前   ❤️ 1
    cveoy
        11
    cveoy  
       353 天前
    看看我接口就知道了
    https://ai1.chagpt.fun/
    jackwaycn
        12
    jackwaycn  
       353 天前
    Spring SseEmitter
    WashFreshFresh
        13
    WashFreshFresh  
       352 天前
    websocket 就好了,原来搞语音识别返回文字效果挺好的。
    jethroX
        15
    jethroX  
       352 天前
    我是通过 http SSE 实现的,你可以搜一下你的 java 框架要怎么实现 sse 。
    mmdsun
        16
    mmdsun  
       220 天前
    今天弄反应式项目集成 chatgpt ,发现 spring webflux 只需要一句话。。
    https://www.baeldung.com/spring-server-sent-events

    这个参考也不错: https://github.com/git-syl/chat-gpt-java-demo
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5953 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 02:33 · PVG 10:33 · LAX 19:33 · JFK 22:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.