VPC環境で利用できます。
RAG(Retrieval Augmented Generation)は、ユーザーのデータを参照し、LLMが精度の高いカスタマイズされた回答を生成してくれる NAVERクラウドプラットフォームのサービスです。RAGサービスは、質問に対する回答を生成し、回答生成に参照される文書とファイルを照会・変更・削除する APIを RESTful形式で提供します。
APIキー
RAG APIは、権限を持つユーザーのみ呼び出すことができるようにユーザー識別ツールの APIキーをアカウントごとに発行しています。APIキーは、API呼び出し時の認証情報として渡すリクエストヘッダのパラメータとして使用します。そのため、RAG APIを使用するには、先に APIキーを発行する必要があります。
APIキーの発行
APIキーは NAVERクラウドプラットフォームコンソールの RAGで発行できます。発行方法は次の通りです。
- NAVERクラウドプラットフォームコンソールで Services > AI Services > RAG > Servicesメニューを順にクリックします。
- サービス票のヘッダで、 [APIキーを管理] ボタンをクリックします。
- APIキー管理画面が表示されたら、 [APIキーを発行] ボタンをクリックします。
- APIキー発行のポップアップが表示されたら、 [発行] ボタンをクリックします。
- APIキーのコピーポップアップから発行された APIキーをコピーします。
発行された APIキーは、APIキーのコピーポップアップを閉じると確認できなくなります。発行時に必ず別の安全な場所に保管してください。
APIキーは、NAVERクラウドプラットフォームのメインアカウント基準で最大5個まで作成できます。
APIのセキュリティ設定
APIキーが第三者に流出する場合、RAGリソースを任意に利用するなどセキュリティ上の深刻な問題が発生する可能性があるので、適切な事前準備と対応が必要です。
APIキーの削除と再発行
APIキーを使用していない場合や、第三者の盗用が疑われる場合は、発行した APIキーを削除し、再度発行する必要があります。削除および再発行方法は次の通りです。
- NAVERクラウドプラットフォームコンソールで Services > AI Services > RAGメニューを順にクリックします。
- サービス票のヘッダで、 [APIキーを管理] ボタンをクリックします。
- APIキー管理画面が表示されたら、削除対象 APIキーの
をクリックし、削除メニューをクリックします。
- APIキーの削除ポップアップが表示されたら、 [削除] ボタンをクリックします。
- APIキーの発行を参照して APIキーを新規発行します。
削除した APIキーは有効ではないキーとして認識され、APIの呼び出しに使用できません。
RAGの共通設定
RAG APIで共通して使用されるリクエスト形式とレスポンス形式を説明します。
リクエスト
共通リクエスト形式を説明します。
API URL
リクエスト API URLは次の通りです。
https://kr-pub-gateway.rag.naverncp.com
リクエストヘッダ
リクエストヘッダの説明は次の通りです。
フィールド | 必須の有無 | 説明 |
---|---|---|
Authorization |
Required | 認証用 APIキー
|
Content-Type |
Required | リクエストデータの形式
|
Accept |
Optional | レスポンスデータの形式
|
- レスポンス結果は基本的に JSON形式で返されますが、
Accept
をtext/event-stream
に指定するとレスポンス結果をストリーム形式で返します。
レスポンス
共通レスポンス形式を説明します。
レスポンスボディ
レスポンスボディの説明は次の通りです。
responseError
responseErrorは API呼び出し失敗情報を定義します。responseErrorの説明は次の通りです。
フィールド | タイプ | 必須の有無 | 説明 |
---|---|---|---|
code |
String | Required | エラーコード |
message |
String | Required | エラーメッセージ |
レスポンスステータスコード
レスポンスステータスコードの説明は次の通りです。
HTTPステータスコード | コード | メッセージ | 説明 |
---|---|---|---|
200 | 20000 | Success | リクエスト成功 |
400 | 400 | Bad Request | ファイルエラー |
400 | 40000 | Invalid parameters | ヘッダパラメータエラー |
400 | 40000 | Too large file error | 大きすぎるファイルエラー |
400 | 40001 | Service not ready | インデックスが完了していない状態で会話を試みる
|
400 | 40002 | Invalid service id | 無効なサービス ID |
401 | 200 | Authentication failed | 認証失敗 |
403 | 210 | Permission denied | 権限なし |
404 | 404 | Index or document not found | インデックスまたは文書が見つからない |
404 | 1001 | Document not found | 文書が見つからない |
404 | 40401 | Service ID not found | 存在しないサービス ID |
408 | 40800 | Timeout | タイムアウト |
408 | 40801 | Llm timeout. | LLMタイムアウト |
415 | 41500 | Unsupported file type error | サポートしないファイル形式 |
422 | 42200 | Request validation error | リクエストボディエラー |
422 | 422 | Request Validation Error | リクエストパラメータエラー |
500 | 900 | Unexpected Error | 予期せぬエラー |
500 | 50000 | Extract error | 抽出エラー |
500 | 50001 | Llm error | LLMレスポンスエラー |
500 | 50002 | Text too long | LLM最大トークン数超過 |
500 | 50003 | Too many requests | LLMリクエスト数超過 |
500 | 50004 | Llm request failed | LLMリクエスト失敗 |
500 | 50005 | Llm model not found | モデルタイプをサポートしない |
500 | 50006 | Client exception | 内部エラー |
500 | 50007 | Invalid Key | 無効な APIキー |
500 | 50008 | Model not found | LLMモデル名が見つからない |
500 | 50020 | Retrieval error | 検索エラー |
500 | 50100 | Citation error | 引用文生成エラー |
503 | 500 | Service unavailable | 一時的にサービス不可 |
503 | 520 | Unavailable endpoint domain | 一時的にサービス不可 |
503 | 530 | Connection closed by endpoint | 異常終了 |
504 | 510 | Gateway timeout | ゲートウェイタイムアウト |
レスポンス例
呼び出しが成功した場合のレスポンス例は、API仕様書を確認してください。呼び出しに失敗した場合のレスポンスのサンプルコードは次の通りです。
{
"code": 50008,
"message": "Model not found"
}
RAG API
RAGサービスが提供する APIの説明は次の通りです。
Chats
API | 説明 |
---|---|
会話の作成 | ユーザークエリに対し、LLMが会話型文章を生成 |
会話タイトルの生成 | ユーザーとやり取りした会話に対し、LLMがタイトルを生成 |
Documents
API | 説明 |
---|---|
文書の追加 | インデックスシステムに JSONデータをアップロード |
IDを指定して文書を追加 | 文書 IDを指定してインデックスシステムに JSONデータをアップロード |
文書の置き換え | アップロードされている既存の文書を新しい文書に置き換え |
文書の削除 | アップロードされている既存の文書を削除 |
インデックスされた文書の照会 | サービス内でインデックスされた文書を照会 |
インデックスされた文書数の照会 | サービス内でインデックスされた文書数を照会 |
文書のインデックス状態の照会 | インデックスリクエストした文書の処理状態を照会 |
Files
API | 説明 |
---|---|
ファイルの追加 | インデックスシステムにファイルをアップロード |
IDを指定してファイルを追加 | ファイル IDを指定してインデックスシステムにファイルをアップロード |
ファイルの置き換え | アップロードされている既存のファイルを新しいファイルに置き換え |
ファイルの削除 | アップロードされている既存のファイルを削除 |
RAG関連リソース
RAG APIについてユーザーの理解に役立つよう、さまざまな関連リソースを提供しています。
- RAGサービスの使用方法
- RAGご利用ガイド: NAVERクラウドプラットフォームコンソールで RAGを使用する方法
- Ncloud使用環境ガイド: VPC、Classic環境とサポートの有無に関するご利用ガイド