2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Anthropic Claude で出来るもん!Advent Calendar 2024

Day 3

Cline+Amazon Bedrock(Claude)で”国内要件”でもAIエージェントを諦めない

Last updated at Posted at 2024-12-02

NTTテクノクロス株式会社の渡邉洋平です。

今回はClineとClaudeの連携をAnazon Bedrockで試していきます。Clineの記事はいくつかありますが、今回はAWSユーザをスコープにした記事です。

Cline?

Meet Cline, an AI assistant that can use your CLI aNd Editor.

Clineは開発者用のAIアシスタントツール。VSCodeなどにプラグインとして導入することで、コーディングの強力な相棒になってくれる。Cursor無し、特別なライセンス無しでもVSCodeでAIチャットできるぞ、といったプロダクト。

ちなみにCursorとは競合にも見えるが、実際は併用できるらしい。筆者は試せていないが、ClaudeのComputer Useにも対応している。

Clineの特徴

Clineを介して指示すると、環境のコンテキストの読み取り、コード生成・更新、実行・結果確認、バグ取りまでのサイクルを自動で提案してくれる。ファイル書きこみやコマンド実行など利用者の判断が居るところだけ承諾を求められ、ボタンを押すだけでコーディングが進む体験を得られる。

性能に関しては、競合?するプロダクトであるCursorに詳しい方も一目置いているようだ。

ClineはOSSであり、LLM APIをリージョン単位で指定できるため、”AIアシスタントツールのLLM APIが、ブラックボックスであって欲しくない”場合にも活躍するだろう。

1. 多様なLLM API接続

Claude Devという名前からしてClaude前提のプロダクトにも見えるが、現時点では図のように主要LLM APIでも動くことがわかる。

スクリーンショット 2024-11-14 111418.png

Ollamaが選べるので、ローカルLLMの選択肢があるのも良さそう。

2. LLM APIを、リージョン指定で設定可能

例えばビジネスルール上「国外にデータを送信してはいけない」という要件がある場合、APIのリージョンを固定できるのは強力だ。

例えば、Amazon Q DeveloperではUSリージョンに保持されることが明言されている。

Regardless of where you use Amazon Q Developer, data is sent to and stored in an AWS Region in the US.

※GitHub Copilotの同様の記述は見つけられなかった。

3. (Claudeの場合)日本語チャットも可能

「裏でLLM APIを叩いているだけ」ということは、Claude3系の多言語対応をそのまま活用できる点が魅力だ。つまり、あまり考えずに日本語でやり取りできる。もちろんプロンプトは英語で書くのが一番強力だが、日常使いで日本語クエリを投げられるのは大きい。

Cline+Bedrock

AWSユーザとしてみたときに採用の敷居はかなり低く、基本的にIAMの権限をマシンに与えれば、ライセンス購入なしで利用始められるのが良さそう。

Cloud9やSageMaker StudioなどのIAM Role付きWeb IDEと組み合わせることで、爆速でAIエージェント入りの開発環境を整備できるのもいい。

また前述の通り「国内要件」も満たしやすく、エンタープライズでも使い始めやすい。

導入方法

今回は簡単に試せるSageMaker Studio Code Editor + Amazon Bedrock構成を試す。

0. SageMaker Studio Code Editor

この準備手順は本質ではないので、以下の手順などでCode Editorが起動している前提とする。

1. Install

ClineはVS Code Extensionとして提供されているので、このように「cline」と検索窓で調べてinstallボタンを押す。

スクリーンショット 2024-11-14 010630.png

導入すると左のメニューにロボットのアイコンが登録される。

スクリーンショット 2024-11-14 011631.png

2. Setting

このような形でAWS RegionとModelを指定する。

スクリーンショット 2024-11-14 011843.png

Credential

設定欄のAccesskey/Secret Keyの入力が必須な雰囲気だが、実際はなくても動く。たとえばCode EditorにIAM Roleが紐づいていればOK。一般的なAWS SDKと同様に扱える。

※具体的にはこの辺が根拠

Usage

せっかくなのでClineを動かす雰囲気を紹介する。

今回はAWS料金を通知するサーバレスのシステムを素朴に依頼する。

スクリーンショット 2024-11-14 140602.png

スクリーンショット 2024-11-14 141018.png

いったん完了したのだが、デプロイ時に失敗したのでエラーメッセージを投げ込んで継続する。

スクリーンショット 2024-11-14 141111.png

完成。npx cdk deployも成功していい感じ。

スクリーンショット 2024-11-14 142242.png

課題

  • Chat経由のエージェント特化のプロダクトなので、tab補完や指定範囲のコードに操作を加える、的な操作は期待できない。

  • APIコストがなかなか高いのは気になっている。例えば先ほどのやり取りも諸々併せて$1.5相当が発生した。

スクリーンショット 2024-11-14 143749.png

一番性能が出るのはClaude 3.5 Sonnetだが、BedrockだとPromptキャッシュが未対応なためか、あっという間に$1が飛んでしまう。3.0 Haikuだと大幅にコストは下がるものの、性能が気になる。3.5 Sonnet比でコスト1/3くらいの3.5 Haikuが国内に来てくれると、かなり現実的に利用しやすくなるだろう。
とはいえ人件費に比べればたかが知れてるので「必殺技」として使うのにも効果的だ。

まとめ

Cline+Claude+Bedrockの特徴と使用感が見えてきた。使用感もいいので、常用する予算がなくとも「必殺技」としてエディタに忍ばせておくと効果的だろう。しばらくお世話になりそうだ。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?