typedef-ai/fenic

Semantic DataFrames for humans and agents

解決的問題

fenic 旨在解決處理非結構化數據時的脆弱性問題。傳統上,從日誌、轉錄文本和文件中提取含義需要結合脆弱的 regex 腳本、一次性提示詞以及手動筆記本探索。fenic 將這些轉瞬即逝的發現轉換為持久、類型化且可重用的 DataFrame 流水線,可以在人類和 AI 代理之間共享。

工作原理

它作為一個語義 DataFrame 引擎運行,直接將 LLM 操作集成到查詢模型中。用戶無需手動編排 API 調用,而是編寫 PySpark/SQL 風格的操作(selectfilterjoin)以及語義算子,如 extractclassifysummarize

關鍵技術機制包括:

  • Lazy Execution(延遲執行): 流水線是延遲構建並為推理而編譯的,具有自動批處理、速率限制和響應緩存功能。
  • Typed Schemas(類型化模式): 用戶使用 Pydantic 模型定義所需的輸出形狀,確保非結構化文本被轉換為結構化、可查詢的列。
  • Semantic Joins(語義聯接): 引擎可以根據自然語言謂詞(含義)而非精確的鍵匹配來聯接兩個 DataFrame。
  • Lineage Tracking(血緣追蹤): 提供行級血緣,將輸出追溯到其源數據。
  • MCP Integration(MCP 集成): 流水線可以提升為 Model Context Protocol (MCP) 工具,允許 AI 代理將其作為受控的工具介面進行調用。

適用對象

  • 需要將大量非結構化文本處理成結構化數據集的數據工程師和分析師
  • 構建評估流水線以分流模型失敗並識別追蹤模式的 AI 開發人員
  • 希望將其代理的數據探索發現轉化為可重複、受控工具的 代理開發人員

亮點

  • 內建語義算子: 對提取、分類、情感分析和摘要提供一流支持。
  • 原生非結構化支持: 專門處理 Markdown、轉錄文本 (SRT/WebVTT)、JSON (透過 jq) 和 PDF。
  • 推理優化: 集成的 Token/成本統計、重試和緩存,用於管理 LLM 開銷。
  • AI 代理工具: 包括用於 linting 的 fenic check 和用於教導編碼代理如何正確使用 API 的 fenic skill install
  • 多供應商支持: 兼容 OpenAI、Anthropic、Google、Cohere 和 OpenRouter。