mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-07-02 05:38:12 +00:00
- Add KnowledgeConfig class with results_limit, score_threshold, metadata_filter - Add knowledge_config field to Agent - Update Knowledge.query() to forward filter and score_threshold to storage - Update Crew.query_knowledge() to accept and forward filter params - Fix BaseKnowledgeSource._save_documents() to pass self.metadata to storage - Wire Agent.execute_task() to use knowledge_config for both agent and crew queries - Add 10 tests covering all changes Co-Authored-By: João <joao@crewai.com>
27 lines
844 B
Python
27 lines
844 B
Python
from typing import Any, Dict, Optional
|
|
|
|
from pydantic import BaseModel, Field
|
|
|
|
|
|
class KnowledgeConfig(BaseModel):
|
|
"""Configuration for knowledge querying behavior.
|
|
|
|
Attributes:
|
|
results_limit: Maximum number of results to return from a knowledge query.
|
|
score_threshold: Minimum relevance score for results.
|
|
metadata_filter: Metadata filter dict passed to the vector store query.
|
|
"""
|
|
|
|
results_limit: int = Field(
|
|
default=3,
|
|
description="Maximum number of results to return from a knowledge query.",
|
|
)
|
|
score_threshold: float = Field(
|
|
default=0.35,
|
|
description="Minimum relevance score for results.",
|
|
)
|
|
metadata_filter: Optional[Dict[str, Any]] = Field(
|
|
default=None,
|
|
description="Metadata filter dict passed to the vector store query.",
|
|
)
|