5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

GROWIにAI機能が追加されたので早速使ってみた

Last updated at Posted at 2024-11-08

オープンソースのWikiであるGROWIは日々着実に開発を行っています。そして、v7.1では目玉機能として、AI機能が追加されました

FireShot Capture 154 - _ - GROWI - localhost.jpg

本記事では、そのAI機能の使い方について解説します。

GROWIにおけるAI機能について

GROWIは社内Wikiとして、企業やコミュニティ、研究室などで利用されています。そこには多くのナレッジが蓄積されています。GROWIではElasticsearchを組み込んでおり、検索結果については一定の評価をもらっています。

その検索結果をベースとして、AIを利用することで、より直感的な回答を得られるのがAI機能になります。 ElasticをRAGとして OpenAI API の Assistants APIを利用しており、 Wiki内にあるコンテンツ(パブリックなもの)をベースに、ユーザーの質問に対して回答を得られます。

使い方

GROWIを利用する場合、一番簡単なのはDocker Composeを使うことです。

https://github.com/weseek/growi-docker-compose

Dockerfileの修正

私が試した際(2024/11/08現在)だと、 error setting certificate file: /etc/ssl/certs/ca-certificates.crt というエラーが出ました。解決するため、 Dockerfile にて ca-certificates を追加しました。

# 変更後
RUN apt-get update && apt-get install -y --no-install-recommends curl ca-certificates \
    && curl -sL https://github.com/jwilder/dockerize/releases/download/$DOCKERIZE_VERSION/dockerize-linux-amd64-$DOCKERIZE_VERSION.tar.gz \
        | tar -xz -C /usr/local/bin

docker-compose.ymlの修正

AI機能を利用する際の設定です。 app に対して環境変数を追加します。

environment:
  - AI_ENABLED=true # AI機能を有効にする
  - OPENAI_SERVICE_TYPE=openai # サービスタイプを指定する
  - OPENAI_API_KEY=xxxxx # APIキーを指定する

OPENAI_SERVICE_TYPEは、 openai azure-openai を指定します。利用するAIサービスのAPIキーを取得して、 OPENAI_API_KEY に設定してください。

AI機能の環境変数は以下の通りです。必要に応じて設定を変更してください。

キー デフォルト値
AI_ENABLED BOOLEAN false
OPENAI_SERVICE_TYPE STRING null
OPENAI_API_KEY STRING null (isSecret: true)
OPENAI_SEARCH_ASSISTANT_INSTRUCTIONS STRING null
OPENAI_CHAT_ASSISTANT_INSTRUCTIONS STRING 略。こちらにて確認してください
OPENAI_ASSISTANT_NAME_SUFFIX STRING null
OPENAI_THREAD_DELETION_CRON_EXPRESSION STRING '0 * * * *' (毎時)
OPENAI_THREAD_DELETION_CRON_MAX_MINUTES_UNTIL_REQUEST NUMBER 60
OPENAI_THREAD_DELETION_BARCH_SIZE NUMBER 100
OPENAI_THREAD_DELETION_API_CALL_INTERVAL NUMBER 36000 (msec)
OPENAI_VECTOR_STORE_FILE_DELETION_CRON_EXPRESSION STRING '0 * * * *' (毎時)
OPENAI_VECTOR_STORE_FILE_DELETION_CRON_MAX_MINUTES_UNTIL_REQUEST NUMBER 60
OPENAI_VECTOR_STORE_FILE_DELETION_BARCH_SIZE NUMBER 100
OPENAI_VECTOR_STORE_FILE_DELETION_API_CALL_INTERVAL NUMBER 36000 (msec)

AI機能の利用法

設定ができていれば、Wikiページ上部にAIアイコンが表示されます。これをクリックすると、フローティングでAIアシスタントが表示されます。

image.png

後は質問をすれば、答えが返ってきます。

FireShot Capture 155 - _ - GROWI - localhost.jpg

注意点

現在のモデルは gpt-4o 固定になります(7.1.2にてデフォルトがgpt-4o-miniになりました)。質問の仕方によってはトークンの制限に引っかかる可能性があります。その場合は質問の仕方を工夫してもらうか、Tierの引き上げを検討してください。

現在はテキストで返ってくるのみです。引用元がページへのリンクになると、さらに便利になりますね(今後に期待) → 7.1.2で追加されました

まとめ

AI機能はまだβ版になりますので、ぜひ試してみてもらってフィードバックをください!社内ナレッジのAI化で、生産性は大きく向上するでしょう。ぜひGROWIを導入して、知識の体系化につなげてください。

OSS開発wikiツールのGROWI | 快適な情報共有を、全ての人へ

5
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?