플라스크 스트리밍을 사용하여 Chatgpt 실시간 응답을 시뮬레이션하십시오
Chatgpt 또는 대규모 파일 다운로드를 시뮬레이션하는 실시간 채팅과 같은 많은 응용 프로그램은 클라이언트의 대기 시간을 피하면서 데이터를 생성하고 전송해야합니다. 이 기사는 Python Flask 프레임 워크 에서이 스트리밍을 구현하는 방법을 보여주고 원래 코드에서 결함을 수정합니다.
원래 코드는 yield
사용하여 스트리밍을 구현하려고 시도했지만 generate()
함수가 종료 된 후에 만 response
객체가 반환되었으므로 브라우저는 컨텐츠가 표시되기 전에 모든 데이터가 생성 될 때까지 기다려야하며, 이는 실시간 응답 기대치와 일치하지 않습니다.
문제 코드 :
시간에서 수면 수면 플라스크 가져 오기 플라스크, 응답, stream_with_context app = flask (__ name__) @app.route ( '/stream', method = [ 'get'])) def stream () : def generate () : 범위 (1, 21)의 i를 위해 : 인쇄 (i) 수율은 항목 {i} \ n '입니다. 수면 (0.5) return response (generate (), mimetype = 'text/plain') __name__ == '__main__': app.run (debug = true)
해결 방법 : Flask 's stream_with_context
Decorator를 올바르게 사용하십시오. 이 데코레이터는 yield
생성 될 때마다 데이터가 클라이언트에게 반환되도록하여 실제 스트리밍이 가능합니다. 개선 된 코드 :
flask import stream_with_context에서 요청, jsonify @app.route ( '/stream') def streamed_response () : def generate () : '안녕하세요'수율 수율 request.args.get ( 'name', 'world') # keyerror를 피하려면 get ()를 사용합니다 생산하다 '!' return jsonify ({ 'message': list (stream_with_context (generate ())}) # json 형식으로 돌아갑니다
stream_with_context
generate
함수를 랩핑하여 데이터가 모든 yield
즉시 전송합니다. 예에서는 데이터 생성이 간단합니다. 실제 애플리케이션에서 generate
기능에는보다 복잡한 로직 (예 : 데이터베이스 쿼리 또는 복잡한 계산)이 포함될 수 있지만 stream_with_context
의 기능은 여전히 데이터의 적시 전송을 보장하는 것입니다. request.args.get('name', 'World')
요청 매개 변수에서 데이터를 얻고,보다 유연한 스트리밍을 구현하며, get()
메소드를 사용하여 누락 된 매개 변수를 처리하여 KeyError
오류를 피합니다. 마지막으로, jsonify
사용하여 결과를 JSON 형식으로 래핑하는데, 이는 프론트 엔드 처리에 더 적합합니다.
위의 개선을 통해 ChatGpt의 실시간 응답 효과를 효과적으로 시뮬레이션 할 수 있습니다.
위 내용은 플라스크 스트리밍은 ChatGpt의 실시간 응답을 어떻게 시뮬레이션합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于Seaborn的相关问题,包括了数据可视化处理的散点图、折线图、条形图等等内容,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于进程池与进程锁的相关问题,包括进程池的创建模块,进程池函数等等内容,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于简历筛选的相关问题,包括了定义 ReadDoc 类用以读取 word 文件以及定义 search_word 函数用以筛选的相关内容,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于数据类型之字符串、数字的相关问题,下面一起来看一下,希望对大家有帮助。

VS Code的确是一款非常热门、有强大用户基础的一款开发工具。本文给大家介绍一下10款高效、好用的插件,能够让原本单薄的VS Code如虎添翼,开发效率顿时提升到一个新的阶段。

本篇文章给大家带来了关于Python的相关知识,其中主要介绍了关于numpy模块的相关问题,Numpy是Numerical Python extensions的缩写,字面意思是Python数值计算扩展,下面一起来看一下,希望对大家有帮助。

pythn的中文意思是巨蟒、蟒蛇。1989年圣诞节期间,Guido van Rossum在家闲的没事干,为了跟朋友庆祝圣诞节,决定发明一种全新的脚本语言。他很喜欢一个肥皂剧叫Monty Python,所以便把这门语言叫做python。


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기

Dreamweaver Mac版
시각적 웹 개발 도구

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

PhpStorm 맥 버전
최신(2018.2.1) 전문 PHP 통합 개발 도구
