すぐに使えるターミナル AI コマンダー
その他の例については、デモをチェックしてください。
注: これは進行中の作業であり、バグや API の変更が予想されます。
Instrukt は、端末ベースの AI 統合環境です。ユーザーが次のことができるプラットフォームを提供します。
モジュール型 AI エージェントを作成して指示する
質問応答用の文書インデックスを生成する
ツールを作成して任意のエージェントに接続する
エージェントは、拡張したり、他のユーザーと共有したり、ツールに添付したり、ドキュメント インデックスを追加したりできる、シンプルなドロップイン Python パッケージです。
自然言語で指示し、安全のため、安全なコンテナー (現在は Docker で実装されている) 内で実行して、専用のサンドボックス スペースでタスクを実行します。
構築: ラングチェーン、テキスト、クロマ
コンサルティング サービス: Langchain または AI の統合に関するサポートが必要ですか? [email protected] までご連絡ください。
使用法
特徴
サポートされているプラットフォーム
LLMモデル
文書索引と質問応答
ロードマップ
貢献する
パトレオン
社交
ビジョン
ライセンス
pip install instrukt[all]
OpenAI API キーを使用してOPENAI_API_KEY
エクスポートします。
実行instrukt
カラースキームが壊れている場合は、 TERM=xterm-256color
をエクスポートします。
構成ファイルは次の場所に作成されます: ~/.config/instrukt/instrukt.yml
instrukt は、CUDA をサポートするヘッドレス サーバーまたは Docker コンテナ上で実行できます。
注: 裸のコンテナから始める場合は、少なくとも g++ と libmagic が必要です。
詳細については、クイックスタートおよびインストール ガイドを確認してください。
最新バージョンのpoetry
がインストールされていることを確認してください。
virtualenv を設定する
リポジトリのクローンを作成する
poetry install -E all --with dev,test
実行します
これにより、エージェント用の追加ツールを含む Instrukt がインストールされます。
詳細については、インストールガイドを参照してください
コーディングAI : コーディングアシスタント。任意のコード ベースに対してインデックスを作成し、エージェントにアタッチして RAG (検索拡張生成) を実行します。
チャット Q&A : シンプルな会話エージェント。
パワー キーボード ユーザーがキーボードから離れることなく AI エージェントに指示できるターミナル ベースのインターフェイス。
Textual TUI ライブラリによるマークダウンとソース コードのサポートを備えた豊富でカラフルなエージェント出力。
CUDA サポートを備えたベアメタルまたは Docker コンテナ上で Instrukt を実行します。
SSH およびターミナル マルチプレクサを使用したリモート アクセス。
カスタム エージェントとツールを設計します。
エージェントは、他のユーザーが共有してロードできる単純な Python パッケージです。
データにインデックスを付けて、エージェントが質問に答えるためにデータを取得できるようにします。
簡単な UI でインデックスを作成および整理します。
インデックスの作成により、プログラミング言語が自動的に検出され、それに応じて分割/チャンク戦略が最適化されます。
検索に使用されたソースドキュメントのあいまい選択 (fzf、dmenu ...) ctrl+p
事前定義されたツールセットを使用するか、独自のツールを設計します。
外出先でもエージェントにツールを取り付けたり取り外したりして、AI ワークフローをニーズに合わせて調整できます。
エージェントとの迅速な対話のための統合された REPL プロンプト、および開発とテストのための高速フィードバック ループ。
カスタム コマンドを使用して反復的なタスクを自動化します。
組み込みのプロンプト/チャット履歴。
メッセージを編集するには、 vim
、 emacs
、または任意の外部$EDITOR
使用します。
LangChain エコシステムを活用してあらゆるものを自動化します。
WIP: 他のフレームワークと統合するための拡張可能な API。
安全性とプライバシーを確保するために、安全な Docker コンテナ内でエージェントを実行します。
エージェントを完全に分離するには、gVisor ランタイムを使用します。
注: Docker エージェントは、初期プレビューとして Patreon サポーターのみが利用できます。
組み込みの IPython コンソールを使用してエージェントをデバッグおよびイントロスペクトします。 ctrl+d
インデックスは、OpenAI またはローカル エンベディング モデルを使用して作成できます。
インデックスを管理するための Chroma。
インデックス管理UI を使用してインデックスを作成および管理する ( I
を押す)
ディレクトリにインデックスを付けると、プログラミング言語が自動的に検出され、ターゲット言語に最適化された適切な分割戦略が使用されます。
インデックスは、エージェントのウィンドウの上部にあるindex
メニューを使用して、取得ツールとして任意のエージェントに添付できます。
エージェントは、添付されたインデックスを質問応答に使用できます。
Linux/Mac。
Windows は WSL2 でテストされました。
現在、 OpenAIのみがサポートされています。
プライベート ローカル モデルの使用が次のマイルストーンです。
プライベートローカルLLMモデル
HF SetenceTransformers は埋め込みをサポートしました。
インストラクターの埋め込み
ローカル埋め込み
テキスト生成ウェブUI APIを使用する
PrivateGPTをエミュレートする
自己ホスト型の go-skynet/LocalAI を使用する
インデックス作成と埋め込み
ディレクトリにインデックスを付け、コンテンツを自動検出します。 ( AutoDirLoader
参照)
プログラミング言語を検出し、適切なスプリッターを使用します。
URLからgitリポジトリをロードする
任意の Web ページ/Web サイトを読み込みます。
ドキュメント
エージェントの作成
ツールの作成
ドキュメントとソース コードのインデックス作成とチャット。
使用例の例
チュートリアル。
あらゆる貢献、フィードバック、PR を歓迎します。
次のことをお手伝いできます。
役立つバグや機能に関する問題をテストおよび作成します。
技術的なスキルをお持ちの方は、PR の作成を歓迎します。
技術的なスキルがない場合は、ドキュメントの作成、例やチュートリアルの追加、または新しいユーザー ストーリーの作成を手伝うことができます。
パトロンになることで、私が今後も Instrukt の開発に時間を費やし、計画されているすべての機能を実現できるよう支援していただけます。初期サポーターへの報酬の詳細については、Patreon ページをご覧ください。
Discord サーバーに参加して、進行状況を最新の情報を入手したり、助けを求めたりしてください。
AI は誰でもアクセスできるものであるべきであり、大企業や SaaS サービスの壁に囲まれた庭園であってはなりません。
Instrukt は、ユーザーの自由を損なうことなくユーザーに力を与えるツールを作成するためのささやかな貢献です。短期的な目標は、外部 API やサービスへの依存を最小限に抑えて利用できるようにし、ユーザーにローカル モデルと自己ホスト型サービスを選択できるようにすることです。
著作権 (c) 2023 チャキブ ベン ジアン。無断転載を禁じます。
Instrukt は AGPL ライセンスでライセンス供与されています。つまり、これは誰でも目的を問わず使用できることを意味します。ただし、インスタンスを公開することにした場合、ユーザーは、行ったすべての変更を含むソース コードのコピーを取得する権利があります (Web サイト上のボタンなどのインターフェイスを通じて利用できる必要があります)。ソース コードを含まない形式でこのプロジェクトを配布しないでください (コードをコンパイル/暗号化して、加えた変更を含むソース コードも配布せずにこのバージョンを配布するなど)。これをクローズド形式で配布することは許可されています。別のアーカイブも提供する場合は、ソースコード。)。