はじめに
Tangentは、ExcalidrawのビジュアルインタラクションとComfyUIの柔軟性を組み合わせた革新的なAI対話キャンバスツールです。従来のチャットインターフェースとは異なり、TangentはAIダイアログを視覚的な実験に変換し、ユーザーに異なるダイアログパスを分岐、マージ、比較する自由を与えます。Tangentはオフライン・ファーストのローカル・デプロイメント・モデルをサポートしており、ローカル・モデルの実行に完全に依存しています。現在、主にOllamaを通じて実装されていますが、より多くのバックエンドをサポートするために拡張する予定です。このプロジェクトはApache 2.0ライセンスの下でオープンソース化されており、コミュニティによる貢献を奨励し、AI対話探索のための新しい実験的プラットフォームを提供しています。
機能一覧
- 対話の蘇生と継続:文脈上の制約を打破し、以前の対話をシームレスに再開する
- 分岐探索システム:任意のダイアログ・ノードで分岐を作成し、複数のダイアログの方向性をテストする。
- オフラインローカルデプロイメント:完全にローカルモデル上で実行され、プライベートデータを保護します。
- ダイナミック・トピック・クラスタリング:会話のトピックを自動的に推測し、カテゴリーに整理してナビゲーション体験を最適化する。
- エクスポートデータの互換性:ClaudeとChatGPTのデータエクスポートフォーマットをサポートしています。
- ビジュアルダイアログツリー:ダイアログの分岐と実験プロセスをツリー構造で表示
- APIサポート:対話データの処理と管理のための完全なREST APIが利用可能です。
- リアルタイムのステータス追跡:対話処理の進捗とタスクステータスの監視
ヘルプの使用
1.環境準備
1.1 必要な依存関係をインストールする:
- Whisper.cpp:音声処理用
git clone https://github.com/ggerganov/whisper.cpp cd whisper.cpp sh ./models/download-ggml-model.sh base.ja 作る
- Ollama: ローカルモデル実行環境
- https://ollama.com/ にアクセスして、お使いのシステムに適したバージョンをダウンロードしてください。
- インストールを確認する:
オラマ --バージョン
- 必要なモデルをダウンロードする:
ollama pull all-minilm ollama pull qwen2.5-coder:7b
1.2 Ollamaサービスを開始する:
オラマサーブ
2.バックエンドのセットアップ
2.1 Python環境を初期化する:
cd tangent-api
ソース my_env/bin/activate
pip install -r requirements.txt
2.2 ローカルモデルを設定する:
cd src
python3 app.py --embedding-model "custom-embedding-model" --generation-model "custom-generation-model"
バックエンド・サービスは http://localhost:5001/api で開始される。
3.フロントエンドのセットアップ
cd simplified-ui
npm i
npm start
インターフェイスを使用するには、http://localhost:3000。
4.主な機能の使用説明
4.1 対話管理:
- 新規ダイアログの作成:画面右上の「+」ボタンをクリック。
- ダイアログの分岐:任意のダイアログ・ノードを右クリックし、「ブランチの作成」を選択します。
- ダイアログのマージ:異なるブランチからターゲットノードにダイアログをドラッグ&ドロップしてマージします。
4.2 話題の整理
- 自動クラスタリング: システムは自動的に対話内容を分析し、トピックタグを生成します。
- トピックフィルタリング: 左側のトピックリストから、関連する会話をすばやく見つけることができます。
- 手動ラベル付け: カスタムのトピックラベルとカテゴリをサポート
4.3 データのインポートとエクスポート
- クロードとChatGPTからの対話ログのインポートをサポート
- 会話ログは複数のフォーマットにエクスポート可能
- 処理を自動化するためのAPIインターフェイスの提供
5.API利用のガイドライン
主要評価項目:
- ポスト
/api/プロセス
アップロードされた対話データの処理 - ゲット
/api/process/status/
クエリーの処理状況 - ポスト
/api/チャット/保存
対話データの保存 - ゲット
/api/chats/load/
特定ダイアログの読み込み - ゲット
/api/トピックス
生成されたトピックのリストを取得する