メインコンテンツまでスキップ

Kuroco RAGの設定方法

概要

Kuroco RAGは、外部ソースから取得した情報を使用して生成AIモデルの精度と信頼性を向上させるサービスです。

このドキュメントではKuroco RAGで何ができるかを理解することを目的に、Kurocoに保存したコンテンツ情報を参照して回答を生成するGPTの作成をします。
説明はKurocoのアカウントを使用して進めますので、Kurocoアカウントを持っていない場合は無料トライアルからアカウント登録してください。

備考

Kuroco RAGのご利用を希望する場合は以下からお問い合わせください。

学べること

以下の手順でKurocoに保存したコンテンツ情報を参照して回答を生成する独自のGPTを作成します。

前提条件

以下のアカウントが必要になりますので、持っていない場合はアカウントを作成してください。

  • Kurocoアカウント:有効なKurocoアカウントを取得している必要があります。まだアカウントをお持ちでない場合は、無料トライアルからアカウント登録してください。

  • ChatGPT Plus、Team、またはEnterpriseプラン:GPTs(独自にカスタマイズしたChatGPTの機能)を利用するには、ChatGPT PlusChatGPT Team、またはChatGPT Enterpriseプランのいずれかを取得している必要があります。
    持っていない場合はアップグレードをご検討ください。

Kurocoの設定

OpenAIを有効にする

[外部システム連携] -> [OpenAI]をクリックします。

Image from Gyazo

「有効にする」にチェックを入れて、[更新する]をクリックする。
今回はKurocoの持つAPI keyを利用する為、API keyの項目は空欄で構いません。

Image from Gyazo

コンテンツを登録する

ChatGPTに参照させるコンテンツをKurocoに登録します。
登録した内容は独自にカスタマイズしたChatGPTのみがAPIを通して取得でき、その他の外部からは参照できないように設定していきます。

コンテンツ定義を追加する

コンテンツ定義一覧の画面から[追加]をクリックします。
Image from Gyazo

以下の内容で設定をします。

全般

項目設定
名前RAGデモ

Image from Gyazo

項目設定

項目Slug項目名項目設定
ext_1なしWYSIWYGWYSIWYG

Image from Gyazo

検索設定

項目設定
ベクトルデータに変換する有効にする
埋め込みモデルtext-embedding-3-small
キーワードテンプレート(AI/Vector)デフォルトのまま

Image from Gyazo

設定ができたら[追加する]をクリックしてコンテンツ定義を追加します。

コンテンツを追加する

OpenAIが利用する為の情報をコンテンツに登録します。

コンテンツ一覧の画面から[追加]をクリックします。
Image from Gyazo

ここでは例として以下の3コンテンツを追加しました。

リモートワークガイドライン
Image from Gyazo

福利厚生ガイドブック
Image from Gyazo

連絡先 Image from Gyazo

備考

例では社内向けのAIアシスタントを想定した社内文書の登録をしています。
チュートリアルでは3コンテンツのみですが、実際の運用時には就業規則全体を保存し、大量の文章から希望する項目の検索・確認をAIに代行させるような用途で利用します。

ベクトルデータを確認する

コンテンツを追加すると、ベクトルデータへの変換が自動で行われます。
コンテンツ編集画面から[その他]->[ベクトルテンプレート]とクリックし、生成されたキーワードを確認してください。

Image from Gyazo

また、ベクトルデータ生成の進捗と結果は[外部システム連携]->[AI]のページで確認ができます。

Image from Gyazo

APIを設定する

次に独自にカスタマイズしたChatGPTがコンテンツ情報を取得するためのAPIを準備します。

APIの追加

Kuroco管理画面のAPIより「追加」をクリックします。

Image from Gyazo

API作成画面が表示されるので、下記入力し「追加する」をクリックします。

項目設定
タイトルRAGデモ
1.0
説明このAPIで、Kuroco RAGデモ株式会社に関する就業規則の情報が取得できます。
並び順0

Image from Gyazo

備考

こちらの設定内容は後ほどChatGPTに入力されますので、説明などは本APIが何をするためのものか分かるように書いてください。

セキュリティの設定

次にセキュリティの設定をします。[セキュリティ] をクリックします。

Image from Gyazo

セキュリティを[静的アクセストークン]に設定して、[保存する]をクリックします。

Image from Gyazo

CORSの設定

次にCORSの設定をします。[CORSを設定する] をクリックします。

Image from Gyazo

CORS_ALLOW_ORIGINSの [Add Origin] をクリックし、下記を追加します。

  • 管理画面URL
  • https://chatgpt.com/

CORS_ALLOW_METHODSの [Add Method] をクリックし、下記を追加します。

  • GET

CORS_ALLOW_HEADERSの [Add Header] をクリックし、下記を追加します。

  • x-rcms-api-access-token

CORS_ALLOW_CREDENTIALSの[Allow Credentials]にチェックが入っていることを確認します。

Image from Gyazo

問題なければ [保存する] をクリックします。

静的アクセストークンの発行

[Swagegr UI]をクリックします。

Image from Gyazo

静的アクセストークンの有効期限を設定して[生成する]をクリックします。
Image from Gyazo

静的アクセストークンが発行されるので値をメモします。
Image from Gyazo

エンドポイントの作成

RAGデモのAPIから[新しいエンドポイントの追加]をクリックします。

Image from Gyazo

以下のエンドポイントを作成します。

項目設定
パスsearch
カテゴリーコンテンツ
モデルTopics
オペレーションlist
topics_group_id先ほど作成したコンテンツ定義のID
cntAPIレスポンスで返されるエントリ数を制限するために3を設定
required_paramvector_search

Image from Gyazo

Image from Gyazo

Image from Gyazo

設定ができたら[追加]をクリックしてエンドポイントを追加します。

OpenAPI設定ファイルのエクスポート

KurocoにはOpenAPIエクスポートの機能があり、OpenAPIの仕様に沿った形式でAPIの情報を出力できます。

エンドポイント一覧の画面から[OpenAPIエクスポートする]をクリックします。

Image from Gyazo

ダウンロード用のモーダルが表示されるので、形式をYAMLにし、対象のエンドポイントにチェックを入れて、[エクスポート]をクリックします。

Image from Gyazo

ダウンロードしたYAMLファイルにはエンドポイントのURLや利用可能なパラメータの設定全てが含まれるので少し調整します。
今回はChatGPTにvector_searchのパラメータのみを利用させるので、parametersの項目からvector_searchパラメータ以外のすべてのパラメータを削除します。

Image from Gyazo

また、vector_searchのrequiredをtrueに設定します。

Image from Gyazo

YAMLファイルの例は以下のようになります。

openapi: 3.1.0
info:
title: RAGデモ
version: '1.0'
description: 'このAPIで、Kuroco RAGデモ株式会社に関する就業規則の情報が取得できます。'
servers:
-
url: 'https://YOUR_SITEKEY.g.kuroco.app'
description: 'API Backend'
paths:
/rcms-api/8/search:
get:
tags:
- コンテンツ
summary: ''
description: |

### **Topics::list (v1)**


## Controller parameters

> **topics_group_id** `27`

> **cnt** `3`

> **required_param** `vector_search`

parameters:
-
name: vector_search
schema:
type: string
format: ''
in: query
required: true
style: form
explode: true
description: ベクトル検索
responses:
'200':
description: 'Topics data successfully fetched'
'404':
description: 'Topics data could not be found'
security:
-
Token-Auth: []
operationId: getRcmsApi8Search
components:
schemas: { }
securitySchemes:
Token-Auth:
type: apiKey
in: header
name: X-RCMS-API-ACCESS-TOKEN

ここまでできたらKuroco側の準備は完了です。

ChatGPTの設定

GPTの作成

https://chat.openai.com/ にアクセスしてログインします。

サイドバーの[GPTを探す]をクリックし、ページ右上の[+作成する]をクリックします。

Image from Gyazo

GPTの作成画面が開くので、構成タブで以下のように設定します。

項目内容
名前Kuroco RAGデモ株式会社 社内ルールアシスタンタント
説明Kuroco RAGデモ株式会社の就業規定を参照して質問に回答します。
指示効率的かつ正確な対応を行うため、ユーザーとのやり取りは以下のガイドラインに従って行ってください。
1. 必ず指定したエンドポイントにリクエストを送ってから回答してください。
2. エンドポイントから得た情報に含まれないことを推測して回答することは禁止します。
3. 業務に関係ないと思われる質問には回答しないでください。

Image from Gyazo

次に、画面下までスクロールし、[新しいアクションを作成する]をクリックします。

Image from Gyazo

スキーマにKurocoからエクスポートして調整したopenapi.yamlファイルの内容を張り付け、認証横の歯車マークをクリックします。

Image from Gyazo

以下のように設定して[保存する]をクリックします。

項目
認証タイプAPIキー
APIキーKurocoで発行した静的アクセストークン
認証タイプカスタム
カスタムヘッダーの名前X-RCMS-API-ACCESS-TOKEN

Image from Gyazo

[テストする]をクリックします。

Image from Gyazo

GPTがKurocoとの通信を試みますので、[許可する]をクリックし、データが取得できれば完了です。

Image from Gyazo

[作成する]をクリックして公開範囲を指定し、GPTの作成を完了してください。

動作の確認

作成したGPTにアクセスして質問をすると、Kurocoに保存したコンテンツの内容を参照して回答することが確認できます。
意図しない回答をする場合はGPTに対する指示を更新して調整します。

Image from Gyazo

以上でKuroco RAGを利用したGPTの作成が完了しました。
このように、Kuroco RAGはGPTに与える情報の管理と連携を容易にする役割を担い、GPTは外部のコンテンツを参照することで生成AIの精度が向上します。


サポート

お探しのページは見つかりましたか?解決しない場合は、問い合わせフォームからお問い合わせいただくか、Slackコミュニティにご参加ください。