书接上回:
【nanoPerplexityAI使用deepseek的部署:实现私有化的AI搜索】
https://blog.lemonhall.me/notesview/show/626
1、正确读取环境变量,使API_KEY不泄露
# -----------------------------------------------------------------------------
# 使用 PowerShell
# 打开 PowerShell(在 “开始” 菜单中搜索 “PowerShell” 并打开)。
# 要为当前用户设置环境变量,可以使用
# $env:OPENAI_API_KEY = "your_api_key"
# 命令。
# 同样,将"your_api_key"替换为实际的 API 密钥。不过,这种方式设置的环境变量只在当前 PowerShell 会话中有效。
# 要永久设置环境变量(对于当前用户),可以使用
# [Environment]::SetEnvironmentVariable("OPENAI_API_KEY","your_api_key","User")。
# 如果要设置系统级别的环境变量(需要管理员权限),可以将最后一个参数改为"Machine",
# 例如
# [Environment]::SetEnvironmentVariable("OPENAI_API_KEY","your_api_key","Machine")。
# Set up OpenAI API key
# 记得使用以上方法后,需要关闭vscode后重启vscode,之后点击F5运行python脚本的时候才能生效
OPENAI_API_KEY = os.getenv('OPENAI_API_KEY')2、迁移到R1模型
# 这里我修改了最大TOKENS值为默认的4K,它最大能到8K,但意义不大,官方文档其实也建议就4K即可
MAX_TOKENS = 4096 # Maximum number of tokens LLM generates
# 这里我修改成了'deepseek-reasoner',默认模型的回复里其实有一个字段叫做
# reasoner,这是openai库最新更新了的东西,但其实对于调用来说,除非你想看<think></think>
# 标签里的东西,否则其实一行代码都不需要去改动
LLM_MODEL = 'deepseek-reasoner' #'gpt-3.5-turbo' #'gpt-4o'3、修正markdown的乱码问题
#这里我加入了, encoding='utf-8',解决了原版的markdown文件输出乱码的问题
def save_markdown(content, file_path):
with open(file_path, 'a', encoding='utf-8') as file:
file.write(content)4、增加webui
添加依赖:
uv add nicegui