东方网站建设,无锡网站排名团队,三亚网站建设介绍,网站栏目规划简介 本文记录一次使用langchain调用openai并部署在huggingface上的经历 安装环境依赖 我的python版本是3.9 pip install langchain
pip install openai代码 app.py 
import streamlit as st
# from langchain_community.chat_models import ChatOpenAI
from langchain_openai …简介 本文记录一次使用langchain调用openai并部署在huggingface上的经历 安装环境依赖 我的python版本是3.9 pip install langchain
pip install openai代码 app.py 
import streamlit as st
# from langchain_community.chat_models import ChatOpenAI
from langchain_openai import ChatOpenAIfrom langchain.schema import (AIMessage,HumanMessage,SystemMessage
)# From here down is all the StreamLit UI.
# 设置页面标题和图标
st.set_page_config(page_titleLangChain Demo, page_icon:robot:)
# 设置头部区域的内容
st.header(Hey, Im your Chat GPT)# 如果 st.session_state 还没有 sessionMessages 属性
if sessionMessages not in st.session_state:# 给llm一个设定st.session_state.sessionMessages  [SystemMessage(contentYou are a helpful assistant.)]def load_answer(question):# sessionMessages 会话消息上下文# 添加上用户的输入st.session_state.sessionMessages.append(HumanMessage(contentquestion))# 模型处理消息 并 获取模型的输出assistant_answer  chat(st.session_state.sessionMessages)# 添加ai的消息到会话历史st.session_state.sessionMessages.append(AIMessage(contentassistant_answer.content))return assistant_answer.content# 输入框, 获取用户输入
def get_text():input_text  st.text_input(You: , keyinput)return input_text# 定义模型
chat  ChatOpenAI(temperature0,# api_keysk-直连key,api_keysk-中转key,# 报错307 就换一个模型试试# 也可以不指定, 用默认的model_namegpt-3.5-turbo,  # OK
)
# 如果用的是中转key, 设置代理
import os
os.environ[OPENAI_API_BASE]  你中转key的代理地址user_input  get_text()
submit  st.button(Generate)# 如果点了按钮
if submit:# 处理用户的输入, 产生回答response  load_answer(user_input)st.subheader(Answer:)# 回显到页面st.write(response, key1)本地测试效果 
streamlit run app.py --server.port 8888部署到huggingface space 提示: 使用huggingface需要魔法 项目创建requirements.txt huggingface sapce 会根据requirements.txt自动安装依赖 langchain
langchain-openai
huggingface_hub创建space 点击huggingface右上角的菜单栏里的space 点击create new space按钮, 输入space name, 选择streamlit作为我们展示页面用的包 选择免费的cpu资源, 设置公开或私有部署 点击create按钮 上传文件 点击菜单栏里的file 右侧点击add file - upload file 拖动文件到虚线框 点击commit 可以看到左上角 space 那行有building的图标, 表示正在构建 进入App, 可以看到在构建 如果构建没有错误, 就点击App, 可以进行使用