30分でOCI Generative AI Agents 爆速RAGってみた 【Object storage編】

## ついにOCI Generative AI Agentsが利用可能に！
9月末、Generative AI AgentsがGAとなりました。

OCI Generative AI Agentsとは？
→生成AIやその他サービスとの連携ツールをフルマネージドで提供
- AIアプリケーション実装の複雑さを軽減
- 回答精度向上のための様々なツールを搭載予定
など利用していただくことでさまざまなメリットがあります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763355/6bfe41d4-e1f3-e723-b256-d33e3e9a8f82.png)

LA版だった機能に比べ、データソースとして
- OpenSearch
- Object Storage (New)
- Oracle DB 23ai (New)

が利用できるようになっています！
もちろん日本語でもチャット可能です！！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763355/f23a11fa-4ec8-6013-973b-882a49a41a12.png)

その他にも、以下の機能を今後搭載予定なので楽しみです！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763355/372fead3-8d9c-8389-e02e-a362ca18effe.png)

## 1.まずはデータソースの追加から
:::note info
以下の手順は全てChicagoリージョンで行う必要があります
:::
[こちらの手順を参考にして](https://oracle-japan.github.io/ocitutorials/beginners/object-storage/)ObjectStorageにPDFファイルをアップロードします。

今回はサクッと試したいので[Oracleの2022年コーポレートガバナンス.pdf](https://www.oracle.com/jp/a/ocom/docs/jp-investor-relations/corporate-governance-202209-jp.pdf)をアップロードします。
Agentのデータソースオブジェクトして、
現在はPDFとTXTファイルのみ対応しているようです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763355/fd52a7ce-9091-2338-b477-e69741f71349.png)

アップロードが終わったら、アナリティクスとAI＞AIサービスからAIエージェントをクリック。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763355/26e6b94b-6670-8aec-b37b-a1116f73cfb6.png)

そして、ナレッジベース＞ナレッジベースの作成をクリック。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763355/a9c4b829-9ffb-aad5-2eed-136a7518009f.png)

こちらに先ほど追加したObject Storageを登録していきます。
- 名前：任意
- データストアタイプ：オブジェクト・ストレージ

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763355/7698466e-5278-ac41-335f-13351eac4aad.png)

こちらでデータソースのバケットとオブジェクトを指定します。
- データソースの指定
    - 名前：任意
    - データバケット：作成したバケット名をクリック
    - オブジェクト：登録したコーポレートガバナンス.pdfにチェック

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763355/5c0236f0-31a4-63f5-6240-09110dc5768b.png)

これでデータソースの作成は終了です。（15分ぐらいでプロビショニング完了）

## 2. エージェントの作成
次に新規エージェントの作成に入ります。
生成AIエージェント＞エージェント＞エージェントの作成をクリックします。
- 名前：任意
- 説明：任意
- ようこそメッセージ：AIエージェントのあいさつ文を設定できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763355/d5313fba-5865-3b0a-75a5-2b71d4614343.png)
- ナレッジベースの追加：先ほど登録したナレッジベース名をチェックする

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763355/63b7723d-18b5-fda3-0222-8e432729f247.png)

あとは作成を押すのみです！

## 3.エージェントを使ってみる
プロビショニングが完了したら、あとはチャットを試してみましょう！
OCI 生成AIエージェントにはチャットUI機能が搭載されているのですぐにRAGを試すことができます！
なんとエージェントのエンドポイントも自動で作成されている↓（神）
先ほどプロビショニングしたエージェント名をクリックすると、エンドポイントも自動で絞り込まれます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763355/060dc179-e189-acc9-a518-5f9751b6c946.png)

では、ポリシーステイトメントに記載してあったオラクルの強みについて聞いてみます。
↓ポリシーステートメント.pdfの文章、このあたりを答えてくれるよう期待・・・・
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763355/4485caa6-263f-49ae-f5b5-8e2b0ff94897.png)

### 結果

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763355/c71685ac-29c1-d95b-fe7b-551678876001.png)

まさに！！このあたりのこと！！！答えてほしかった！！！（涙）

### ログも見てみる
感動の涙で画面が見えませんが、ログで文書内のどの文を参考にして回答したかも見ることができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763355/7af80bab-1d2d-3392-f062-48bbcd1bfb8b.png)

優秀過ぎる！
以前スクラッチで参考にした文章を表示できるよう実装を試みて1ヶ月が経ちましたが、もうこれで良いじゃないか、、、


## さいごに
なんと30分程度で簡単に、そしてクオリティも高いUI画面を生成AI AgentsでRAG構成することができました。
ノーコードとなるとプログラミングアレルギーをお持ちの方でもRAGれると思います。

今度はデータソースとしてAutonomous Databaseを使う編もやりますので是非次回もお楽しみに！