TTechSpecs

指令用途

graphify init 是用於初始化新 Graphify 專案的指令。它會建立專案所需的目錄結構、配置檔案,並連接到指定的圖譜資料庫。


運作流程

  1. 建立專案目錄:建立 .graphify/ 目錄存放配置
  2. 生成配置檔案:建立 graphify.config.yaml
  3. 選擇圖譜後端:支援 Neo4j、Memgraph 等
  4. 初始化圖譜連線:測試與圖譜資料庫的連線

基本用法

初始化新專案

# 在當前目錄初始化
graphify init

# 指定專案名稱
graphify init --name="my-knowledge-graph"

# 指定圖譜後端
graphify init --backend=neo4j

配置選項

選擇圖譜後端

# Neo4j(預設)
graphify init --backend=neo4j

# Memgraph
graphify init --backend=memgraph

# 內建輕量級後端(開發用)
graphify init --backend=builtin

設定 LLM 提供者

# OpenAI
graphify init --llm=openai --api-key="$OPENAI_API_KEY"

# Anthropic Claude
graphify init --llm=anthropic --api-key="$ANTHROPIC_API_KEY"

# 本地模型
graphify init --llm=local --endpoint="http://localhost:11434"

實戰對話範例

範例一:初始化預設專案

  • You:
    graphify init
  • AI:

    正在初始化 Graphify 專案…

    ✓ 建立目錄:.graphify/ ✓ 建立配置:graphify.config.yaml ✓ 建立提示目錄:.graphify/prompts/ ✓ 建立提取目錄:.graphify/extracted/

    預設配置

    • 圖譜後端:Neo4j (bolt://localhost:7687)
    • LLM 提供者:OpenAI (gpt-4)

    下一步

    1. 確保 Neo4j 正在運行
    2. 執行 graphify test 驗證連線
    3. 執行 graphify extract README.md 開始提取知識

範例二:初始化時指定配置

  • You:
    graphify init --name="research-kb" --backend=memgraph --llm=anthropic
  • AI:

    正在初始化 Graphify 專案「research-kb」…

    ✓ 建立目錄:.graphify/ ✓ 建立配置:graphify.config.yaml

    專案配置

    project:
      name: research-kb
    graph:
      backend: memgraph
      uri: bolt://localhost:7687
    llm:
      provider: anthropic
      model: claude-3-opus-20240229

    ✓ 專案初始化完成!


範例三:使用內建輕量後端

  • You:
    graphify init --backend=builtin
  • AI:

    正在初始化 Graphify 專案…

    ✓ 使用內建輕量級圖譜後端 ✓ 資料將存儲於:.graphify/data/graph.db

    注意:內建後端僅適用於開發與測試,生產環境建議使用 Neo4j 或 Memgraph。

    ✓ 專案初始化完成!


生成的配置檔案

初始化後會生成 graphify.config.yaml

# 專案設定
project:
  name: my-graphify-project
  version: 1.0.0

# 圖譜設定
graph:
  backend: neo4j
  uri: bolt://localhost:7687
  username: neo4j
  password: neo4j
  database: graphify

# LLM 設定
llm:
  provider: openai
  model: gpt-4
  temperature: 0.1
  max_tokens: 2000

# 提取設定
extraction:
  mode: balanced
  batch_size: 10
  max_depth: 3

常見問題

Q1:忘記 Neo4j 密碼怎麼辦?

A:可以在配置檔案中更新:

graph:
  password: your-actual-password

或使用環境變數:

export NEO4J_PASSWORD="your-password"
graphify init

Q2:如何更改已初始化的配置?

A:直接編輯 graphify.config.yaml,或使用:

graphify config set graph.backend memgraph

Q3:內建後端可以用於生產嗎?

A:不建議。內建後端僅用於開發和測試,生產環境應使用 Neo4j 或 Memgraph。


與其他指令組合

初始化後測試連線

# 1. 初始化
graphify init

# 2. 測試連線
graphify test

# 3. 開始使用
graphify extract README.md

初始化後導入配置

# 1. 使用已有配置初始化
graphify init --config=team-config.yaml

# 2. 驗證配置
graphify config validate

最佳實踐

1. 使用版本控制

# 初始化後加入 git
git add graphify.config.yaml
git commit -m "初始化 Graphify 專案"

# 記得將敏感資訊加入 .gitignore
echo ".graphify/secrets.yaml" >> .gitignore

2. 為不同環境建立配置

# 開發環境
graphify init --config=config.dev.yaml

# 生產環境
graphify init --config=config.prod.yaml

3. 記錄初始化步驟

# 在專案 README 中記錄初始化步驟
echo "# 初始化步驟

\`\`\`bash
graphify init --backend=neo4j --llm=anthropic
\`\`\`" >> README.md

graphify init 是開始使用 Graphify 的第一步,掌握它你就能快速建立知識圖譜專案!