Amazon Bedrock でモデルを呼び出す優れた方法。 Rust で書かれており、Twitch でライブ配信されています。
0.8.2 時点の新機能- ベータ版: チャットを HTML ファイルにエクスポートできるようになりました。 (現在のディレクトリに
conversation.html
として保存されるだけです)
現在、次のモデルをサポートしています。
クロード 3.5 v2 ソネット
クロード 3.5 俳句
クロード 3.5 ソネット
クロードV2
クロード V3 ソネット
クロード V3 俳句
ラマ2 70B
LLama3.1モデル
コヒアコマンド
ジュラシック 2 ウルトラ
Titan テキスト エクスプレス V1
Mistral AI モデル (Mixtral、Mistral7b、Mistral Large 1 および 2)
これを使い始めるには、いくつかのことを行う必要があります。
Amazon Bedrock と対話できるようにするには、 Bedrust が実行されるマシン上に一連の AWS 認証情報が必要です。この設定を行う最も簡単な方法は、AWS CLI を設定することです。必ず AWS CLI をインストールし、 aws configure
コマンドを実行して認証情報を設定してください。
AWS 認証情報が正しく設定されているかどうかを確認するには、 aws sts get-caller-identity
を実行します。
darko@devbox [~/workspace/projects/bedrust]: aws sts get-caller-identity {"ユーザー ID": "AIDAXXXXXXXXXXXXXXXXXX5","アカウント": "123456789999999","Arn": "arn:aws:iam::123456789999999:user/alan-ford"}
そうそう、認証情報を設定するユーザーに Amazon Bedrock のInvokeModel
へのアクセス許可があることを確認してください。
それは当然のことですが、これはRustアプリケーションです。最も簡単に始める方法は、rustup を使用することです。
ここで、 bedrust をコンパイルできるようにするために、いくつかの追加パッケージが必要になります。つまり、 build-essential
(または同様の) パッケージ グループが必要です。オペレーティング システムおよびパッケージ マネージャーによっては、名前が異なる場合があります。
Ubuntu/Debian:
sudo apt install build-essential
アーチ Linux:
sudo pacman -S base-devel
MacOS:
xcode-select --install
Amazon Linux/Red Hat/CentOS:
yum groupinstall "Development Tools"
アプリケーションをローカルにインストールするには、次を実行するだけです。
cargo install bedrust
これにより、コンパイルされたバイナリが$CARGO_HOME/bin
ディレクトリにインストールされます。 $PATH
正しく設定されていれば、すぐに実行できるはずです。しかし、その前に...
設定を初期化しましょう。 bedrust は設定ファイル ( bedrust_config.ron
) を使用するため、(他のリソースとともに) $HOME/.config/bedrust
ディレクトリ内に保存する必要があります。これを手動で行うこともできますが、それを行う機能があります。ただ実行してください:
bedrust --init
デフォルトのモデルを選択するよう求められます。これにより、 bedrust を使用できるようにするために必要なファイルがすべて作成されます。必要がない限り、これらのファイルを変更する必要はありません。
最後に、次のコマンドを使用してアプリケーションを実行します。
bedrust -m <MODELNAME> # モデル名をサポートされているもののいずれかに置き換えます
または、デフォルトのモデル (構成ファイルの--init
/ で定義されたモデル) を使用したい場合は、パラメーターを指定せずにbedrust
を実行してください。 -m
パラメーターを渡してモデルを選択せず、かつ構成ファイルにデフォルトのモデルが設定されていない場合は、実行中にモデルを選択するように求められます。
Amazon Bedrock を使用して、AWS で大規模言語モデルを呼び出して操作するためのコマンドライン ツール 用途: ベッドラスト [オプション] オプション: --init -m, --model-id <MODEL_ID> [可能な値: llama270b、llama31405b-instruct、llama3170b-instruct、llama318b-instruct、cohere-command、claude-v2、claude-v21、claude-v3-sonnet、claude-v3 -俳句、クロード-v35-ソネット、クロード-v352-ソネット、クロード-v35-俳句、jurrasic2-ultra、titan-text-express-v1、mixtral8x7b-instruct、mistral7b-instruct、mistral-large、mistral-large2] -c, --caption <キャプション> -s、--source <ソース> -x -h, --help ヘルプを印刷する -V, --version バージョンを表示します
一度、質問を入力するよう求められ、 ENTER
押します。 プログラムを終了するには、質問プロンプトに/q
と入力するだけです。
新機能: Claude V3 のマルチモダリティのおかげで、画像をこの大規模言語モデルに渡すことができるようになりました。これは、アクセシビリティのためにキャプション画像などの楽しいことをできることを意味します。この機能は Bedrust バージョン0.5.0
から利用可能です。
️ 現在、これをサポートしているモデルは、Claude V3 Sonnet と Claude V3 Haiku の 2 つだけです。
キャプションを使用するには、画像があるディレクトリとともに-c
パラメータを渡すだけです。
bedrust -m クロード-v3-sonnet -c /tmp/test-images/
これにより、サポートされている画像が取得され、それらのキャプションが生成されます。最終的には、画像パスに接続されたキャプションを含むcaptions.json
ファイルが現在の作業ディレクトリに作成されます。
出力の例を次に示します。
[ {"path": "/tmp/test-images/4slika.jpeg","caption": "イーサネットやその他のポートを備えた回路基板を冷却するコンピューターの CPU ファン。" }、 {"path": "/tmp/test-images/kompjuter.jpeg","caption": "さまざまな電子部品とワイヤーを備えたオープン回路基板。オフィスや作業場に設置され、背景に棚や機器が見えます。 」 }、 {"path": "/tmp/test-images/c64.jpeg","caption": "画面上に Twitch ロゴが表示されているビンテージ Commodore コンピューターのモニター。" } 】
さらに、このプロジェクトのルートにあるbedrust_config.ron
ファイルを編集することで、キャプションプロンプトとサポートされている画像ファイル形式をカスタマイズできます。
これで、Bedrust にソース コードを含むディレクトリを指定できるようになりました。これにより、コンテキストに沿ってコード リポジトリについて話し合うことができ、コードの提案、改善、さらなる開発を提供できます。
注:これはベータ機能であるため、制限があります。たとえば、非常に大きなコードベースを処理することはできません。また、コードベース全体がコンテキストに送信されるため、コストが大幅に高くなる可能性があります。
bedrust --source ~/workspace/repos/your_code_repo
バージョン 0.8.2 では、会話を保存し、後で呼び出したり、適切な HTML ファイルとしてエクスポートしたりできるようになりました。この機能はまだベータ版であるため、機能が壊れたり、機能が変更されることが予想されます。
これがどのように機能するかというと、チャット コマンドとして/s
入力すると、Bedrust は会話を~/.config/bedrust/chats
内に.json
ファイルとして保存します。この入力には、生成された会話の概要とタイトルが含まれます。会話を呼び出すには、チャット コマンドとして/r
と入力するだけで、保存されている会話のいずれかを選択できます。
会話を HTML にエクスポートするには、 /h
実行するだけです。これにより、現在のディレクトリにconversation.html
というファイルが作成されます。このファイルの保存場所を選択する機能はまだ実装していないので、とりあえずはこんな感じです。 (結局のところベータ版です?)。
bedrustに同梱されている重要な設定ファイルが 1 つあります。
bedrust_config.ron
- アプリケーション自体に関連する構成パラメータを保存します。
これらは$HOME/.config/bedrust/
ディレクトリにある必要があります。それらが存在しない場合、アプリケーションは警告を表示し、実行に失敗します。 bedrust --init
実行すると、自動的に作成できます。
ユーザー入力を取得する機能
モデルを選択できること
モデルと会話する
応答を単語ごとにストリーミングバックする
エラー処理の改善
コードのテスト
画像を生成する機能
もっと美しくしてください
長いペーストの処理が向上
Bedder 認証情報の処理