AIパーソナル・ラーニング
と実践的なガイダンス

cognee:知識グラフベースのRAG構築のためのオープンソースフレームワーク、コアプロンプト学習

はじめに

cogneeはオープンソースのフレームワークで、LLM(Large Language Models)コンテキストのロードと構築を行い、知識グラフとベクトルストアを通して正確で解釈可能なAIソリューションを作成するように設計されています。このフレームワークは、コスト削減、解釈可能性、ユーザーガイドによる制御を容易にし、研究や教育での使用に適しています。公式ウェブサイトでは、入門チュートリアル、概念概要、学習教材、関連研究情報を提供しています。

cogneeの最大の強みは、データを投げて自動的に処理し、ナレッジグラフを構築し、関連するトピックのグラフをつなぎ合わせることで、データ内のつながりだけでなく、関連するトピックのつながりをより明確にすることができることだ。 ラグ LLMに関しては、究極の解釈可能性を提供する。

1.データを追加し、LLMに基づいてデータを自動的に識別・処理し、ナレッジグラフに抽出し、weaviateベクトル・データベースに保存することができる。 2.利点は:経費の節約、データのグラフ視覚化による解釈可能性、コードへの統合などによる制御可能性。

 


-1

 

 

機能一覧

cogneeフレームワークの使用に関する入門的な情報を提供します。
コグニーのコンセプトフレームワークとアプリケーションを説明する
AIソリューションの費用対効果の説明
解釈的なAIとユーザー誘導型コントロールの重要性を強調

 

 

ヘルプの使用

コグニーフレームの詳細は公式サイトをご覧ください。
コグニーの理論的基礎を習得するための概要を読む
チュートリアルと学習教材で学習を始めよう

 

 

コアプロンプトコマンド

 

classify_content:分類されたコンテンツ

あなたは分類エンジンであり、コンテンツを分類する必要があります。 独自の分類を考案するのではなく、既存の分類オプションのいずれかを使用するようにしてください。
可能な分類は以下の通り。
{
「自然言語テキスト": {
「タイプ": "TEXT"。
"サブクラス": [
「記事、エッセイ、レポート」。
「書籍と原稿」。
「ニュース記事とブログ記事
「研究論文と学術出版物」。
「ソーシャルメディアの投稿とコメント」。
「ウェブサイトのコンテンツと商品説明」。
"個人的な物語とストーリー"
]
},
「構造化文書": {
「タイプ": "TEXT"。
"サブクラス": [
「スプレッドシートとテーブル」。
「フォームと調査」。
「データベースとCSVファイル
]
},
「コードとスクリプト": {
「タイプ": "TEXT"。
"サブクラス": [
「様々なプログラミング言語のソースコード
「シェルコマンドとスクリプト」。
「マークアップ言語(HTML、XML)」。
「スタイルシート(CSS)と設定ファイル(YAML、JSON、INI)"
]
},
「会話データ": {
「タイプ": "TEXT"。
"サブクラス": [
「チャット記録とメッセージ履歴
「顧客サービスの記録とやりとり」。
"会話型AIのトレーニングデータ"
]
},
「教育コンテンツ」: {
「タイプ": "TEXT"。
"サブクラス": [
「教科書の内容と講義ノート」。
「試験問題とアカデミックエクササイズ」。
「Eラーニング教材
]
},
「クリエイティブ・ライティング」: {
「タイプ": "TEXT"。
"サブクラス": [
「詩と散文」。
「演劇、映画、テレビの脚本」。
歌詞
]
},
「技術文書": {
「タイプ": "TEXT"。
"サブクラス": [
「マニュアルとユーザーガイド
「技術仕様と API ドキュメント」。
"ヘルプデスクの記事とFAQ"
]
},
"法的規制文書": {.
「タイプ": "TEXT"。
"サブクラス": [
「契約と合意」。
「法律、規則、判例」。
"政策文書とコンプライアンス資料"
]
},
「医学・科学テキスト": {
「タイプ": "TEXT"。
"サブクラス": [
「臨床試験報告書」。
「患者記録と症例ノート」。
「科学雑誌の記事
]
},
「財務およびビジネス文書」: {
「タイプ": "TEXT"。
"サブクラス": [
「財務報告書と財務諸表」。
「ビジネスプランと提案」。
「市場調査・分析レポート
]
},
「広告およびマーケティング資料」: {
「タイプ": "TEXT"。
"サブクラス": [
「広告コピーとマーケティングスローガン」。
「製品カタログとパンフレット」。
「プレスリリースとプロモーション・コンテンツ
]
},
「電子メールと通信」: {
「タイプ": "TEXT"。
"サブクラス": [
「プロフェッショナルでフォーマルな手紙
「個人的なメールや手紙
]
},
"メタデータと注釈": {。
「タイプ": "TEXT"。
"サブクラス": [
「画像とビデオのキャプション
「さまざまなメディアの注釈とメタデータ"
]
},
「言語学習教材」: {
「タイプ": "TEXT"。
"サブクラス": [
「語彙リストと文法規則」。
「言語演習とクイズ
]
},
「オーディオ・コンテンツ": {
「type」:「AUDIO」。
"サブクラス": [
「音楽トラックとアルバム".
「ポッドキャストとラジオ放送」。
「オーディオブックとオーディオガイド」。
「インタビューとスピーチの録音」。
「効果音と環境音
]
},
「画像コンテンツ": {
「type」:「IMAGE」、
"サブクラス": [
「写真とデジタル画像」。
「イラスト、図表」。
「インフォグラフィックスと視覚的データ表現」。
「アートワークと絵画」。
「スクリーンショットとグラフィカル・ユーザー・インターフェース
]
},
「ビデオコンテンツ": {
「タイプ":"VIDEO"。
"サブクラス": [
「映画と短編映画」。
「ドキュメンタリーと教育ビデオ
「ビデオチュートリアルとハウツーガイド」。
「長編アニメとカートゥーン
"イベントのライブ録画とスポーツ中継"
]
},
「マルチメディア・コンテンツ": {
"type":"MULTIMEDIA"。
"サブクラス": [
「インタラクティブなウェブコンテンツとゲーム
「仮想現実(VR)と拡張現実(AR)体験」。
「ミックスメディア・プレゼンテーションとスライドデッキ」。
「マルチメディアを統合したEラーニングモジュール」。
「デジタル展示とバーチャルツアー
]
},
「3DモデルとCADコンテンツ": {.
「タイプ」:「3D_MODEL」。
"サブクラス": [
「建築レンダリングと建築計画」。
「製品デザインモデルとプロトタイプ」。
「3Dアニメーションとキャラクターモデル
「科学的シミュレーションとビジュアライゼーション
"AR/VR環境のための仮想オブジェクト"
]
},
「手続き的コンテンツ」: {
「type": "PROCEDURAL".
"サブクラス": [
「チュートリアルとステップバイステップガイド」。
「ワークフローとプロセスの説明」。
「シミュレーションとトレーニング演習」。
「レシピと工作の手順
]
}
}

generate_cog_layers:認知レイヤーを生成する

data_type}}ファイルの分析、特に多層ネットワークのコンテキストにおける分析、分類、分類のようなタスクのために、`{{ data_type }}`ファイルを分析することが求められます。data_type }}に含まれる情報の深さと広さを把握するために、様々なレイヤーを組み込むことができます。

これらのレイヤーは、`{{ data_type }}`の内容、文脈、特徴を理解するのに役立つ。

あなたの目的は、詳細な多層ネットワークや知識グラフの構築に貢献する、意味のある情報の層を抽出することです。

手元にあるデータのユニークな特徴と固有の特性を考慮することによって、このタスクにアプローチする。

非常に重要: 作業しているコンテキストは `{{ category_name }}` であり、データを抽出している特定のドメインは `{{ category_name }}` です。

レイヤー抽出のガイドライン。
考慮すべきこと:コンテンツタイプ(この場合、`{{カテゴリー名 }}`)は、どのようにレイヤーに分解するかで大きな役割を果たすはずです。

分析に基づき、特定したレイヤーを定義・説明し、データセットを理解する上での関連性と貢献度を説明する。あなたが独自にレイヤーを特定することで、データのニュアンスに富んだ多面的な表現が可能になり、知識の応用が強化される。あなたが独自に特定したレイヤーは、データのニュアンスに富んだ多面的な表現を可能にし、知識発見、コンテンツ分析、情報検索におけるアプリケーションを強化する。

generate_graph_prompt: グラフ・プロンプトを生成する

あなたはトップクラスのアルゴリズム
知識グラフを構築するために構造化された形式で情報を抽出するために設計されています。
- ノード**は実体や概念を表す。 ウィキペディアのノードのようなものだ。
- エッジ**は概念間の関係を表す。 ウィキペディアのリンクのようなものだ。
- その目的は、シンプルで明瞭にすることである。
ナレッジグラフで、多くの人々がアクセスできるようにする。
コグニティブレイヤー `{{レイヤー }}` のデータのみを抽出しています。
## 1. ノードのラベリング
- **Consistency**: ノード・ラベルに基本型または初級型を使用するようにしてください。
- 例えば、人を表すエンティティを特定する場合。
というラベルを常に貼ってください。
数学者」や「科学者」といった具体的な用語の使用は避ける。
- イベント、エンティティ、タイム、またはアクション・ノードをカテゴリに含めます。
- 記憶のタイプをエピソード型か意味型かに分類する。
- ノードID**:決して整数をノードIDとして使用しないでください。
ノードIDは、本文中にある名前または人間が読める識別子でなければならない。
## 2. 数値データと日付の取り扱い
- 年齢やその他の関連情報のような数値データ。
は、それぞれのノードの属性またはプロパティとして組み込まれるべきである。
- 日付/数字**のための独立したノードなし。
日付や数値用に別のノードを作成しないでください。
常にノードのアトリビュートまたはプロパティとしてアタッチします。
- **Property Format**: プロパティはキー・バリュー形式でなければならない。
- 引用符**: プロパティ値の中では、決してエスケープされた一重引用符や二重引用符を使用しないでください。
- 命名規則**:リレーションシップの名前にはsnake_caseを使用する。
## 3.共参照分解能
- **Maintain Entity Consistency**.
エンティティを抽出する際には、一貫性を確保することが不可欠である。
ジョン・ドウ」のような実体が複数回言及されている場合
本文中では、別の名前や代名詞(例:"Joe"、"he")で呼ばれている、
知識グラフ全体を通して、常にそのエンティティの最も完全な識別子を使用する。
この例では、エンティティIDとして "John Doe "を使用する。
ナレッジグラフは首尾一貫した、理解しやすいものでなければならない。
そのため、エンティティ参照の一貫性を維持することは非常に重要である。
## 4.厳格なコンプライアンス
ルールを厳守してください。 守らない場合は解雇となります。""""

read_query_prompt: クエリープロンプトを読む

from os import path
インポートログ
from cognee.root_dir import get_absolute_path

def read_query_prompt(prompt_file_name: str).
"""クエリープロンプトをファイルから読み込む。
トライしてみよう。
file_path = path.join(get_absolute_path("./infrastructure/llm/prompts"), prompt_file_name)

with open(file_path, "r", encoding = "utf-8") as file.
return file.read()
except FileNotFoundError:
logging.error(f "エラー: プロンプトファイルが見つかりません。
なし
例外を除く。
logging.error(f "エラーが発生しました:%s {e}")
なし

render_prompt: レンダリングプロンプト

from jinja2 import Environment, FileSystemLoader, select_autoescape
from cognee.root_dir import get_absolute_path

def render_prompt(filename: str, context: dict) -> str.
"""Jinja2テンプレートを非同期にレンダリングします。
param filename: レンダリングするテンプレートファイルの名前。
param context: テンプレートをレンダリングするコンテキスト。
:return: 文字列としてレンダリングされたテンプレート""""

# cogneeのルートディレクトリに対して相対的にベースディレクトリを設定する
base_directory = get_absolute_path("./infrastructure/llm/prompts")

# ファイルシステムからテンプレートをロードするためにJinja2環境を初期化する
env = 環境(
loader = FileSystemLoader(base_directory)、
autoescape = select_autoescape(["html", "xml", "txt"])
)

# 名前でテンプレートを読み込む
テンプレート = env.get_template(ファイル名)

# 提供されたコンテキストでテンプレートをレンダリングする
rendered_template = template.render(context)

return rendered_template

summarize_content:内容を要約する

あなたは要約エンジンであり、コンテンツを要約すべきである。 簡潔かつ簡潔に。

AIイージー・ラーニング

AIを始めるための素人ガイド

AIツールの活用方法を、低コスト・ゼロベースから学ぶことができます。AIはオフィスソフトと同様、誰にとっても必須のスキルです。 AIをマスターすれば、就職活動で有利になり、今後の仕事や勉強の労力も半減します。

詳細を見る
無断転載を禁じます:チーフAIシェアリングサークル " cognee:知識グラフベースのRAG構築のためのオープンソースフレームワーク、コアプロンプト学習

チーフAIシェアリングサークル

チーフAIシェアリングサークルは、AI学習に焦点を当て、包括的なAI学習コンテンツ、AIツール、実践指導を提供しています。私たちの目標は、高品質のコンテンツと実践的な経験の共有を通じて、ユーザーがAI技術を習得し、AIの無限の可能性を一緒に探求することです。AI初心者でも上級者でも、知識を得てスキルを向上させ、イノベーションを実現するための理想的な場所です。

お問い合わせ
ja日本語