Skip to main content

Python client library for the Cortefy API

Project description

Cortefy Python Client

Python client library for the Cortefy API - a semantic memory and search system.

Installation

pip install cortefy

Quick Start

from cortefy import Cortefy
import os

# Initialize the client
client = Cortefy(
    api_key=os.environ.get("CORTEFY_API_KEY"),
    base_url="https://api.cortefy.com"  # Optional, defaults to localhost
)

# Add a memory
result = client.memories.add(
    content="Machine learning enables computers to learn from data",
    container_tags=["ai-research"],
    metadata={"priority": "high"}
)

# Search memories (single container)
results = client.search.memories(
    q="machine learning accuracy",
    limit=5,
    container_tag="ai-research"
)

# Search across multiple containers
results = client.search.memories(
    q="machine learning accuracy",
    container_tags=["ai-research", "notes", "docs"]
)

API Reference

Cortefy Client

client = Cortefy(api_key: str, base_url: Optional[str] = None)
  • api_key: Your Cortefy API key (required)
  • base_url: Base URL for the API (defaults to http://localhost:8000)

Memories Resource

client.memories.add(...)

Add a memory to the Cortefy API.

Parameters:

  • content (str, required): The text content to store
  • container_tags (List[str] or str, optional): Container tag(s) - uses first if multiple
  • metadata (dict, optional): Optional metadata dictionary
  • chunk_method (str, optional): Chunking method ('tokens' or 'sentences', default: 'tokens')
  • chunk_size (int, optional): Size of chunks (default: 1000)
  • chunk_overlap (int, optional): Overlap between chunks (default: 200)

Returns: Response dict with status, chunks, memory_ids, container, and timing

Search Resource

client.search.memories(...)

Search memories using semantic search.

Parameters:

  • q (str, required): Search query text
  • container_tag (str or List[str], optional): Single container tag to filter by (deprecated: use container_tags)
  • container_tags (List[str], optional): List of container tags to search across multiple containers
  • limit (int, optional): Maximum number of results (default: 5)
  • min_similarity (float, optional): Minimum similarity score 0.0-1.0 (default: 0.0)

Returns: Response dict with results, timing, and total

Error Handling

The client raises custom exceptions:

  • CortefyException: Base exception for all Cortefy errors
  • AuthenticationError: Raised when API key authentication fails
  • APIError: Raised when API returns an error response
  • ValidationError: Raised when request validation fails
from cortefy import Cortefy
from cortefy.exceptions import AuthenticationError, APIError

try:
    client = Cortefy(api_key="invalid-key")
    result = client.memories.add(content="test")
except AuthenticationError as e:
    print(f"Auth failed: {e}")
except APIError as e:
    print(f"API error: {e} (status: {e.status_code})")

License

MIT

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cortefy-0.1.3.tar.gz (14.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cortefy-0.1.3-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

Details for the file cortefy-0.1.3.tar.gz.

File metadata

  • Download URL: cortefy-0.1.3.tar.gz
  • Upload date:
  • Size: 14.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.0

File hashes

Hashes for cortefy-0.1.3.tar.gz
Algorithm Hash digest
SHA256 282feb2a23c39f7ab11bd330ece0297d5e724e14817c3329ae5133184a7d13db
MD5 900642adbc1dce4546b199d9a712c069
BLAKE2b-256 bb8adb914a4a4d6159d99fa739aa0f358fa3e17842cb2acbb065a6a6d044d50a

See more details on using hashes here.

File details

Details for the file cortefy-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: cortefy-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 8.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.0

File hashes

Hashes for cortefy-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 4d9ca4f1d203cf95b28886cf2a2b51eb8fae3b8e78414313c463c084a109bcb6
MD5 f22468f9f6eeef2a6bc0fdb65d56bd23
BLAKE2b-256 0e0fde82612e796928dcc066f5b7b5db0496ab754893403df485a45e4333196d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page