😺
openai-assistants-quickstartの微修正
概要
OpenAIのAssistants APIを用いたRAG(
Retrieval-augmented generation)を用いたチャット画面の構築にあたり、以下のリポジトリを使用しました。
この時、citation
の扱いについて修正が必要であったため、備忘録としてメモします。
背景
上記のリポジトリを使い、OpenAIのAssistants APIを用いたRAGを試みました。
この時、デフォルトの設定では、以下のように、「4:13†」のように、引用箇所を示す記号がそのまま表示されてしまいました。
対策
annotateLastMessage
を以下のように修正しました。file_path
をfile_citation
に変更することで、引用箇所を置換することができた。
一例として、以下では、File APIへのリンクに置換しています。
openai-assistants-quickstart/app/components/chat.tsx
const annotateLastMessage = (annotations) => {
// Get the current messages
setMessages((prevMessages) => {
const lastMessage = prevMessages[prevMessages.length - 1];
const updatedLastMessage = {
...lastMessage,
};
annotations.forEach((annotation) => {
if (annotation.type === "file_citation") {
updatedLastMessage.text = updatedLastMessage.text.replaceAll(
annotation.text,
`[リンク](/api/files/${annotation.file_citation.file_id})`
);
}
});
return [...prevMessages.slice(0, -1), updatedLastMessage];
});
};
結果、以下のようにリンクが表示されました。
まとめ
目的に応じて、置換の内容を変更できるかと思います。参考になりましたら幸いです。
Discussion