Skip to content

cubenlp/askchat

Repository files navigation

AskChat

通过命令行运行的 ChatGPT 交互工具,随时随地调用 ChatGPT。

终端调用
hello
Jupyter Lab
jupyter

安装及配置

pip install askchat --upgrade

配置环境变量:

# 初始化配置(交互式)
chatenv init -i

# 或者手动设置环境变量
export OPENAI_API_KEY="your-api-key"
export OPENAI_API_BASE="https://api.openai.com/v1"
export OPENAI_API_BASE_URL="https://api.openai.com"
export OPENAI_API_MODEL="gpt-3.5-turbo"

注:OPENAI_API_BASE 变量优先于 OPENAI_API_BASE_URL 变量,二者选一即可。

使用方法

配置完成后,进行简单的问答:

ask hello world

除此之外,可使用 askchat 进行更灵活的对话。

AskChat

askchat 支持 API 调试,对话管理等功能。

使用示例

1. API 调试
debug
2. 获取可用模型列表
validmodels
3. 多轮对话,保存对话,加载对话等
chatlog
4. 指定参数,使用不同的模型和 API
para-models

对话管理

用户保存、加载、删除和列出对话历史记录,以及继续之前的对话。

参数 示例 解释
-c askchat -c <message> 继续上一次的对话
--regenerate askchat -r 重新生成上一次对话的最后回复
--load askchat -l <file> 加载历史对话
--print askchat -p [<file>] 打印上次或指定的对话历史
--save askchat -s <file> 将当前对话历史保存到文件
--delete askchat -d <file> 删除指定的对话历史文件
--list askchat --list 列出所有保存的对话历史文件

所有对话保存在 ~/.askchat/,最近一次对话保存在 ~/.askchat/_last_chat.json

模型参数

askchat 的默认参数,这些参数用于直接与 ChatGPT 交互或者配置 API 的连接信息。

参数 示例 解释
<message> askchat hello 最简单的对话
--model -m gpt-3.5-turbo 指定使用的模型名称
--base-url -b https://api.example.com 设置 Base URL (不包含 /v1)
--api-base --api-base https://api.example.com/v1 设置 Base URL
--api-key -a sk-xxxxxxx 提供 OpenAI API 密钥
--option -o top_p 1 temperature 0.5 设置请求参数

注:一些模型 API,比如智谱,使用 /v4 作为 API 的基础路径,这时得用 --api-base 参数。

其他参数

辅助功能,如生成配置文件、调试日志、打印模型列表和显示版本信息等,使用 --help 查看所有支持的参数。

参数 示例 解释
--print-url askchat hello --print-url 打印实际请求的 URL
--debug askchat --debug 打印调试日志
--valid-models askchat --valid-models 打印包含 "gpt" 名称的模型列表
--all-valid-models askchat --all-valid-models 打印所有的模型
--version askchat -v askchat 的版本信息

注:--all-valid-models 会打印所有可用模型,包括 Embedding, dalle-3, tts 等,使用 --valid-models 可以过滤掉这些。

问题和反馈

使用过程中有任何问题或建议,欢迎提交 Issue

About

Interact with ChatGPT in terminal via chattool

Resources

License

Stars

Watchers

Forks

Packages

No packages published