6 个版本

0.2.1 2023 年 12 月 1 日
0.2.0 2023 年 11 月 30 日
0.1.3 2023 年 7 月 26 日
0.1.1 2023 年 6 月 28 日

机器学习 分类中排名 #448

MIT/Apache

30KB
724 行代码(不含注释)

cogni

Rust

Unix 风格的 LLM 交互接口。

重点

cogni 通过关注以下方面,将语言模型脚本(提示)引入熟悉的 Unix 环境:

  • Unix shell 中的 ergonomics 和 accessibility
  • 可组合性和与其他程序的互操作性 - 包括 cogni 本身
  • 以临时和重复的方式轻松进行语言模型编程

例如,设计用于 IO 重定向(stdinstdout)允许 cogni 与文件、编辑器缓冲区、剪贴板、系统日志、套接字和许多外部工具一起工作,而无需专门的集成。

功能

  • Unix 设计理念(IO 重定向、可组合性、互操作性)
  • 临时语言模型脚本
  • 灵活的输入和输出格式(文本、JSON、NDJSON)
  • 独立二进制文件 - 无需 Python
  • 🚧 通过模板重复脚本
  • 🚧 与外部工具集成(Emacs、Raycast)

非功能特性

  • 交互式使用 - 相反,从交互式环境(REPL、emacs 等)中调用 cogni

安装

# Install from crates.io
$ cargo install cogni

# From source
$ cargo install --path .

设置

cogni 预期通过 --apikey 选项或更方便地通过 OPENAI_API_KEY 环境变量提供 OpenAI API 密钥。

# in shell configuration
export OPENAI_API_KEY=sk-DEADBEEF

cogni 概览

🚧 WIP

依赖项

~11–28MB
~396K SLoC