25 个版本
新版本 0.1.23 | 2024 年 8 月 20 日 |
---|---|
0.1.20 | 2024 年 7 月 23 日 |
0.1.10 | 2024 年 3 月 12 日 |
0.1.5 | 2023 年 11 月 7 日 |
0.1.2 | 2023 年 5 月 9 日 |
1263 在 命令行工具 中
每月下载量 428
28KB
347 行
ja (just ask) 是一个小型 CLI 应用程序,允许您使用 AI 工具
目前它只是围绕 openAI API 的另一个包装器
交互式运行
ja
命令行参数
ja (just ask) is a small CLI / TUI app that allows you to work with AI tools
Usage: ja [OPTIONS] [-- <MESSAGE>...] [COMMAND]
Commands:
chat default command (can be omitted)
logs
help Print this message or the help of the given subcommand(s)
Arguments:
[MESSAGE]...
Options:
-m, --model <MODEL>
ID of the model to use
Possible values:
- gpt-3.5-turbo: alias 3.5 (default - because it's fast and cheap)
- gpt-3.5-turbo-0301
- gpt-3.5-turbo-0613
- gpt-3.5-turbo-1106
- gpt-3.5-turbo-16k: alias 3.5-16k
- gpt-3.5-turbo-16k-0613
- gpt-4: alias 4
- gpt-4-0314
- gpt-4-0613
- gpt-4-1106-preview
- gpt-4-32k: alias 4-32k
- gpt-4-32k-0314
- gpt-4-32k-0613
-t, --temperature <TEMPERATURE>
Sampling temperature
-p, --top-p <TOP_P>
Probability mass percentage
-n, --n <N>
Number of choices to generate for each input message
-s, --stream <STREAM>
Stream the resultt of the API call
[possible values: true, false]
--stop <STOP>
Up to 4 sequences where the API will stop generating further tokens
-c, --max-tokens <MAX_TOKENS>
The maximum number of tokens to generate in the chat completion
--presence-penalty <PRESENCE_PENALTY>
Number between -2.0 and 2.0. Positive values penalize new tokens based on whether they appear in the text so far
--frequency-penalty <FREQUENCY_PENALTY>
Number between -2.0 and 2.0. Positive values penalize new tokens based on their existing frequency in the text so far
-u, --user <USER>
A unique identifier representing your end-user, which can help OpenAI to monitor and detect abuse
-i, --input <INPUT>
Input file
-o, --output <OUTPUT>
Output file
--system <SYSTEM>
System message
-v, --verbose
Show verbose output
-h, --help
Print help (see a summary with '-h')
-V, --version
Print version
示例用法
直接提供命令行参数
$ ja -- hello
assistant: Hello! How can I assist you today?
通过管道提供输入
$ echo "hello" | ja
assistant: Hello! How can I assist you today?
待办事项
没有特定的顺序,一些想法
- 将日志存储在缓存目录中(使用 --verbose 查看文件名)
- 从 stdin 接收输入
- 如果命令行或 stdin 中没有提供输入,则在终端提示输入
- 聊天模式。不仅仅是单次对话,而是多个(尽管已经有许多 ChatGPT 风格的应用程序了)
- 在输出中突出显示代码语法
- 添加 TUI 模式(使用 ratatui)
- 历史管理:允许用户查看、搜索和管理他们的对话历史,使其更容易参考之前的交互。
- 可自定义的输出格式:提供选项供用户自定义输出格式,例如纯文本、JSON,甚至 HTML,以满足他们的需求。
- 速率限制和用量监控:添加功能以监控 API 用量并执行速率限制,帮助用户避免意外成本或 API 限制。
- 支持其他 OpenAI 模型:扩展应用程序以支持其他 OpenAI 模型,为用户提供更多生成内容的选择。
- 文本到语音集成:集成文本到语音功能,允许用户收听 AI 生成的响应而不是阅读它们。
- 自定义系统消息。可自定义 AI 行为:允许用户调整 AI 的行为
- 模板消息
依赖项
~12–27MB
~359K SLoC