Интерфейс оболочки на естественном языке для *nix-систем.
Orphic — это инструмент CLI, который использует GPT для преобразования сложных задач в команды оболочки, которые будут выполняться в системе. Он превосходно справляется с относительно простыми задачами, но для выполнения которых требуются сложные и непонятные команды.
$ orphic delete all installers or tars from ~/Downloads that are more than a week old
find ~/Downloads -name '*.tar.*' -mtime +7 -delete; find ~/Downloads -name '*.dmg' -mtime +7 -delete
Execute? [Y/n] Y
Примечание. По умолчанию Orphic работает в безопасном режиме и не будет автоматически выполнять команды без подтверждения, если не указан небезопасный режим.
cargo install orphic
OPENAI_API_KEY
. Вы можете создать его здесь.Orphic предназначен для использования так же, как и любой другой инструмент CLI.
$ orphic sort ~/Downloads into folders based on media type
$ orphic how strong is my network connection
$ orphic what version kernel am i running
$ orphic show me the name and size of all files larger than 8MB in ~/Downloads/
$ orphic <do task that would otherwise require complex commands that you don't know off the top of your head>
-u
или --unsafe
будут выполнять команды без проверки пользователя.
-4
или --gpt4
попытается использовать GPT-4 вместо GPT-3.5-Turbo. Обратите внимание, что это будет работать только в том случае, если ваша учетная запись OpenAI имеет доступ к модели.
-i
или --interpret
будет описывать выходные данные задачи на естественном языке (обратите внимание, что обычно это происходит очень медленно).
$ orphic -u -i how much disk space is available
You have 16GB available out of a total of 113GB on your main hard
drive, which is mounted on the root directory.
Other partitions and file systems are also listed with their
respective usage percentages and mount points.
-d
или --debug
будет отображать необработанный текст GPT вместе с обычным выводом даже в небезопасном режиме.
$ orphic -u -d count the lines of rust code in this directory excluding /target/.
{"command": "find . -name target -prune -o -name '*.rs' -type f -print0 | xargs -0 wc -l"}
61 ./src/prompts.rs
219 ./src/main.rs
280 total
-r
или --repl
запустит Orphic в среде REPL.
$ orphic -u -r
orphic> when did i last login
wtmp begins Sat Mar 18 14:55
orphic> quit
$
Иногда Орфик работает. Иногда это не так. GPT непоследователен, а подсказки, которые я использую, оставляют желать лучшего. Результаты будут лучше, если вы отформатируете задачу в виде команды, а не вопроса («перечислите открытые в данный момент порты» вместо «какие порты открыты в данный момент»). Часто возникающая ошибка заключается в том, что GPT попытается использовать команды или пакеты для другой ОС/дистрибутива или попытается использовать инструменты, которые у вас еще не установлены. Быстрое решение — указать свою ОС, если вы считаете, что для выполнения задачи потребуются инструменты, специфичные для ОС, но я работаю над тем, чтобы Orphic лучше знал, какие команды находятся в его распоряжении, а какие нет.
Запросы на вытягивание приветствуются. Если вы используете Orphic и получаете хороший/интересный результат, пришлите его мне. Аналогично, если вы получите действительно плохой результат, пришлите его мне или откройте проблему. Эта система очень экспериментальная, и я все еще пытаюсь выяснить, что работает, а что нет, когда дело касается подсказок и настроек.
Массачусетский технологический институт
Авторские права (c) Уилл Сэвидж, 2023 г.