tinystruct/smalltalk

A tinystruct-based chat module which integrated with @OpenAI GPT-4 / 3.5-turbo / ChatGPT. @tinystruct

何を解決するか

Smalltalk は、AI機能を統合した即時メッセージングアプリケーションです。静的なチャットインターフェースの問題を解決し、ユーザーが ChatGPT と自分のアップロードしたドキュメントに対して Retrieval-Augmented Generation (RAG) を実行できるようにすることで、チャットアプリを知識ベースアシスタントに進化させます。

動作方法

このプロジェクトは Java ベースのフレームワーク(tinystruct)と SQLite を使用してデータを保存します。OpenAI API をチャットと埋め込み(embeddings)の両方に統合しています。ユーザーがドキュメント(PDF、Word、Excel など)をアップロードすると、システムは Apache Tika を使ってテキストを抽出し、テキストを断片化してその断片の埋め込みを SQLite に保存します。ユーザーが質問をすると、システムは質問を埋め込みに変換し、最も関連性の高い断片を取得して、ChatGPT に送信するプロンプトに含めることで、文脈に応じた回答を提供します。

対象ユーザー

自前でホストできる即時メッセージングプラットフォームを求めており、組み込みの AI アシスタントとチャットインターフェースを通じて自身のドキュメントを照会したい開発者やユーザー向けです。

特徴

  • マルチインターフェース対応:コマンドラインインターフェース(CLI)とウェブインターフェースの両方を提供。
  • RAG 機能:ドキュメントのアップロードと自動処理をサポートし、AI駆動のドキュメント質問応答を実現。
  • 広範なドキュメント対応:Apache Tika を介して、プレーンテキスト、Markdown、PDF、Word、Excel、PowerPoint ファイルを対応。
  • 柔軟なデプロイ:スタンドアロンの Java アプリ、Tomcat/Netty サーバー、または Docker で実行可能。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト