tidyverse/ellmer
Call LLM APIs from R
何を解決するか
ellmer は、R プログラミング言語に大規模言語モデル(LLM)を統合するための統一的で使いやすいインターフェースを提供します。複数の異なる API プロバイダーと認証方法を管理する複雑さを排除し、R ユーザーがクラウドプロバイダーのモデルやローカル LLM の間をコードを再書き込みせずに切り替えることができます。
仕組み
このパッケージは、状態を保持する R6 オブジェクトを使用して会話の管理を行います。ユーザーは chat_openai() や chat_ollama() などのプロバイダー固有の関数を使ってチャットオブジェクトを作成し、複数のクエリにわたって会話履歴(コンテキスト)を維持します。複数の操作モードをサポート:直接通信用のインタラクティブなチャットコンソール、スクリプトベースのインタラクション用のプログラム的メソッド呼び出し、content_image_file() および content_image_url() を通じた画像などのマルチモーダル入力のサポート。
対象ユーザー
R ユーザー、データサイエンティスト、研究者で、R 環境内で LLM をデータ分析、コード生成、アプリケーション開発に活用したい方。
特徴
- 広範なプロバイダー対応:公式プロバイダー(Anthropic、OpenAI、Google、AWS Bedrock、Azure OpenAI、Databricks、Snowflake)およびコミュニティ支援プロバイダー(Groq、Mistral、Hugging Face など)をサポート。
- 柔軟な操作方法:ライブインタラクティブコンソールとプログラム的アクセスの両方を提供。
- 高度な LLM 機能:ストリーミング出力、ツール/関数呼び出し、構造化データ抽出を実装。
- シームレスな認証:主要クラウドプロバイダーの OAuth や IAM ベースの資格情報を自動検出。
- ローカル LLM 統合:Ollama と統合し、データプライバシーを確保し、コストゼロでローカルでモデルを実行可能。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト