Skip to content

DOC: Documentation Examples Have Incorrect Search Method Return Value Handling #3207

@HScarb

Description

@HScarb

Issue with current documentation:

Description

The documentation examples in docs/integrations/ and docs/examples/ directories contain incorrect handling of the search method's return value structure. The search method now returns {"results": [...]} but many examples
are still accessing results directly or using incorrect field names, which causes runtime errors when users follow these examples.

Problem Details

Issues Found:

  1. Wrong field access: Using mem['text'] instead of mem['memory']
  2. Direct iteration: for mem in memories instead of for mem in memories['results']
  3. Wrong root field: memories['memories'] instead of memories['results']
  4. Missing safety checks: No handling for empty results or missing results field

Affected Files:

docs/integrations/ (10 files):

  • multion.mdx - Line 74: mem['text'] and direct iteration
  • langchain.mdx - Line 67: Direct iteration without results field
  • langgraph.mdx - Line 71: Direct iteration without results field
  • autogen.mdx - Lines 71, 103: Direct iteration without results field
  • openai-agents-sdk.mdx - Line 51: Direct iteration without safety check
  • agentops.mdx - Line 107: Incorrect iteration pattern
  • And 4 more files...

docs/examples/ (5 files):

  • ai_companion.mdx - Lines 91, 149: Wrong field name and direct iteration
  • personal-travel-assistant.mdx - Lines 158, 162: Wrong root field ['memories']
  • llamaindex-multiagent-learning-system.mdx - Line 217: Direct iteration
  • openai-inbuilt-tools.mdx - Line 228: Missing results field handling
  • memory-guided-content-writing.mdx - Line 89: Direct iteration

Expected Behavior

All documentation examples should correctly handle the search method's return structure:

# Correct pattern
memories = client.search(query, user_id=user_id)
if memories and memories.get('results'):
    for result in memories['results']:
        print(result['memory'])  # Use 'memory' field, not 'text'

Current Behavior

Examples use incorrect patterns that cause KeyError or AttributeError when executed:

# Incorrect patterns in current docs
for mem in memories:              # Should be memories['results']
    print(mem['text'])           # Should be mem['memory']

memories['memories']             # Should be memories['results']

Impact

  • Users following documentation examples encounter runtime errors
  • Inconsistent code examples across different integrations
  • Poor developer experience and confusion about correct API usage

Environment

  • All integration and example documentation
  • Affects users of mem0ai library across all supported integrations

Proposed Solution

Update all affected documentation files to:

  1. Use correct field names (memory instead of text)
  2. Access the results field properly
  3. Add safety checks with memories.get('results', [])
  4. Ensure consistent patterns across all examples

This is a documentation-only fix that doesn't require code changes, just updating the examples to match the current API structure.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions