feed

文章または会話からファクトを抽出して保存します。REST専用で、MCPに feed ツールはありません。

POST/v1/feed

content と messages のいずれかを送信します。両方ある場合は content が優先されます。

フィールド型必須説明
contentstringいいえ元の文章。最大5,000バイト。
messagesMessage[]いいえ会話の配列。最大20件。各メッセージにはrole(user、assistant、system)とcontentが必要です。
sourcestringいいえ抽出したファクトのラベル。最大255文字。
collectionstringいいえコレクションコード。省略するか "" を渡すとデフォルト領域を使います。
reasonbooleanいいえデフォルトはfalseで、1回抽出して保存します。trueではエージェントが既存のグラフを検索し、長く役立つファクトを選び、type:idの名前空間を付け、略語を正規化し、重複を省きます。内部のremember/recall呼び出しは、reasonの基本コストに加えてクレジットを消費します。

リクエスト:文章

{
  "content": "Maya works at Acme and writes TypeScript.",
  "source": "onboarding-conversation"
}

リクエスト:会話

{
  "messages": [
    { "role": "user", "content": "I work at Acme as a backend engineer" },
    { "role": "assistant", "content": "What stack?" },
    { "role": "user", "content": "Mostly Go and PostgreSQL" }
  ],
  "source": "onboarding_chat"
}

リクエスト:推論を有効化

{
  "content": "Maya works at Acme and writes TypeScript.",
  "source": "onboarding-conversation",
  "reason": true
}

SDKでの呼び出し例:

await memory.feedWithOptions({
  content: "Maya works at Acme and writes TypeScript.",
  source: "onboarding-conversation",
  reason: true,
});
memory.FeedWithOptions(ctx, gomind.FeedRequest{
  Content: "Maya works at Acme and writes TypeScript.",
  Source:  "onboarding-conversation",
  Reason:  true,
})
$memory->feed(
  'Maya works at Acme and writes TypeScript.',
  'onboarding-conversation',
  null,
  true
);

応答

{
  "status": "completed",
  "facts_extracted": 3,
  "facts_created": 3,
  "facts": []
}

すでに三つ組がある場合はfeedを使わず、remember_manyを呼び出してください。