贡献#

要为此工具做出贡献,首先检出代码。然后创建一个新的虚拟环境

cd llm
python -m venv venv
source venv/bin/activate

或者如果你正在使用 pipenv

pipenv shell

现在安装依赖和测试依赖

pip install -e '.[test]'

运行测试

pytest

调试技巧#

默认的 OpenAI 插件有一个调试机制,用于显示发送到 OpenAI API 的确切请求和响应。

设置 LLM_OPENAI_SHOW_RESPONSES 环境变量,如下所示

LLM_OPENAI_SHOW_RESPONSES=1 llm -m chatgpt 'three word slogan for an an otter-run bakery'

这会将 API 请求和响应的详细信息输出到控制台。

使用 --no-stream 查看更易读的主体版本,它避免了流式响应

LLM_OPENAI_SHOW_RESPONSES=1 llm -m chatgpt --no-stream \
  'three word slogan for an an otter-run bakery'

文档#

本项目文档使用 MyST 编写 - 它使用 Markdown 编写并由 Sphinx 渲染。

要在本地构建文档,运行以下命令

cd docs
pip install -r requirements.txt
make livehtml

这将启动一个实时预览服务器,使用 sphinx-autobuild

文档中的 CLI --help 示例使用 Cog 进行管理。按如下方式更新这些文件

just cog

你需要安装 Just 来运行此命令。

发布流程#

发布新版本

  1. 更新 docs/changelog.md,包含新的更改。

  2. 更新 pyproject.toml 中的版本号

  3. 创建新版本的 GitHub Release

  4. 等待软件包推送到 PyPI,然后...

  5. 运行 regenerate.yaml 工作流,将 Homebrew tap 更新到最新版本。