Skip to main content

Documentation Index

Fetch the complete documentation index at: https://agno-v2-shaloo-ai-support-link.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Setup

Follow the instructions in the Azure Cosmos DB Setup Guide to get the connection string. Install MongoDB packages:
uv pip install "pymongo[srv]"

Example

agent_with_knowledge.py
import urllib.parse
from agno.agent import Agent
from agno.knowledge.knowledge import Knowledge
from agno.vectordb.mongodb import MongoVectorDb

# Azure Cosmos DB MongoDB connection string
"""
Example connection strings:
"mongodb+srv://<username>:<encoded_password>@cluster0.mongocluster.cosmos.azure.com/?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000"
"""
mdb_connection_string = f"mongodb+srv://<username>:<encoded_password>@cluster0.mongocluster.cosmos.azure.com/?tls=true&authMechanism=SCRAM-SHA-256&retrywrites=false&maxIdleTimeMS=120000"

knowledge_base = Knowledge(
    vector_db=MongoVectorDb(
        collection_name="recipes",
        db_url=mdb_connection_string,
        search_index_name="recipes",
        cosmos_compatibility=True,
    ),
)

knowledge.insert(
    url="https://agno-public.s3.amazonaws.com/recipes/ThaiRecipes.pdf"
)

# Create and use the agent
agent = Agent(knowledge=knowledge_base)
agent.print_response("How to make Thai curry?", markdown=True)

Azure Cosmos DB MongoDB vCore Params

ParameterTypeDescriptionDefault
collection_namestrName of the MongoDB collectionRequired
nameOptional[str]Name of the vector databaseNone
descriptionOptional[str]Description of the vector databaseNone
idOptional[str]Unique identifier for the vector databaseAuto-generated
db_urlOptional[str]MongoDB connection string"mongodb://localhost:27017/"
databasestrDatabase name"agno"
embedderOptional[Embedder]Embedder instance for generating embeddingsOpenAIEmbedder()
distance_metricstrDistance metric for similarityDistance.cosine
overwriteboolOverwrite existing collection and index if TrueFalse
wait_until_index_ready_in_secondsOptional[float]Time in seconds to wait until the index is ready3
wait_after_insert_in_secondsOptional[float]Time in seconds to wait after inserting documents3
max_pool_sizeintMaximum number of connections in the connection pool100
retry_writesboolWhether to retry write operationsTrue
clientOptional[MongoClient]An existing MongoClient instanceNone
search_index_nameOptional[str]Name of the search index"vector_index_1"
cosmos_compatibilityOptional[bool]Whether to use Azure Cosmos DB MongoDB vCore compatibility modeFalse
search_typeSearchTypeThe search type to use when searching for documentsSearchType.vector
hybrid_vector_weightfloatDefault weight for vector search results in hybrid search0.5
hybrid_keyword_weightfloatDefault weight for keyword search results in hybrid search0.5
hybrid_rank_constantintDefault rank constant (k) for Reciprocal Rank Fusion in hybrid search60