Skip to content

Latest commit

 

History

History
1139 lines (1045 loc) · 141 KB

File metadata and controls

1139 lines (1045 loc) · 141 KB

PraisonAI API Reference

This file is auto-generated. Do not edit manually. Regenerate with: praisonai docs api-md --write

Shared Types

Types:

from praisonaiagents import ContextPolicy, GuardrailResult, HandoffConfig, HandoffCycleError, HandoffDepthError, HandoffError, HandoffInputData, HandoffResult, HandoffTimeoutError, ReflectionOutput, StepResult, TaskOutput, ToolResult, ToolValidationError, WorkflowContext

Methods:

  • GuardrailResult.from_tuple(result: Tuple[bool, Any]) -> 'GuardrailResult'
  • HandoffConfig.from_dict(data: Dict[str, Any]) -> 'HandoffConfig'
  • HandoffConfig.to_dict() -> Dict[str, Any]
  • TaskOutput.json() -> Optional[str]
  • TaskOutput.to_dict() -> dict
  • ToolResult.to_dict() -> Dict[str, Any]

Agents

Types:

from praisonaiagents import Agent, Agents, AutoAgents, AutoRagAgent, ContextAgent, DeepResearchAgent, ImageAgent, PlanningAgent, PromptExpanderAgent, QueryRewriterAgent, create_context_agent

Methods:

Tools

Types:

from praisonaiagents import BaseTool, FunctionTool, ToolRegistry, Tools, get_registry, get_tool, register_tool, tool, validate_tool

Methods:

  • BaseTool.call(**kwargs) -> Any
  • BaseTool.get_schema() -> Dict[str, Any]
  • BaseTool.run(**kwargs) -> Any
  • BaseTool.safe_run(**kwargs) -> ToolResult
  • BaseTool.validate() -> bool
  • BaseTool.validate_class() -> bool
  • FunctionTool.call(*args, **kwargs) -> Any
  • FunctionTool.injected_params() -> Dict[str, Any]
  • FunctionTool.run(**kwargs) -> Any
  • ToolRegistry.clear() -> None
  • ToolRegistry.discover_plugins() -> int
  • ToolRegistry.get(name: str) -> Optional[Union[BaseTool, Callable]]
  • ToolRegistry.get_all() -> Dict[str, Union[BaseTool, Callable]]
  • ToolRegistry.list_base_tools() -> List[BaseTool]
  • ToolRegistry.list_tools() -> List[str]
  • ToolRegistry.register(tool: Union[BaseTool, Callable], name: Optional[str] = None, overwrite: bool = False) -> None
  • ToolRegistry.unregister(name: str) -> bool
  • Tools.internet_search(*args, **kwargs)
  • praisonaiagents.get_registry() -> ToolRegistry
  • praisonaiagents.get_tool(name: str) -> Optional[Union[BaseTool, Callable]]
  • praisonaiagents.register_tool(tool: Union[BaseTool, Callable], name: Optional[str] = None) -> None
  • praisonaiagents.tool(func: Optional[Callable] = None) -> Union[FunctionTool, Callable[[Callable], FunctionTool]]
  • praisonaiagents.validate_tool(tool: Any) -> bool

Workflows

Types:

from praisonaiagents import Loop, Parallel, Pipeline, Repeat, Route, Workflow, WorkflowStep, loop, parallel, repeat, route

Methods:

  • Workflow.arun(input: str = '', llm: Optional[str] = None, verbose: bool = False) -> Dict[str, Any]
  • Workflow.astart(input: str = '', llm: Optional[str] = None, verbose: bool = False) -> Dict[str, Any]
  • Workflow.from_template(uri: str, config: Optional[Dict[str, Any]] = None, offline: bool = False, **kwargs) -> 'Workflow'
  • Workflow.memory_config() -> Optional[Dict[str, Any]]
  • Workflow.on_step_complete() -> Optional[Callable]
  • Workflow.on_step_error() -> Optional[Callable]
  • Workflow.on_step_start() -> Optional[Callable]
  • Workflow.on_workflow_complete() -> Optional[Callable]
  • Workflow.on_workflow_start() -> Optional[Callable]
  • Workflow.planning_llm() -> Optional[str]
  • Workflow.reasoning() -> bool
  • Workflow.run(input: str = '', llm: Optional[str] = None, verbose: bool = False, stream: bool = None) -> Dict[str, Any]
  • Workflow.start(input: str = '', **kwargs) -> Dict[str, Any]
  • Workflow.stream() -> bool
  • Workflow.to_dict() -> Dict[str, Any]
  • Workflow.verbose() -> bool
  • Workflow.verbose(value: bool)
  • WorkflowStep.async_execution() -> bool
  • WorkflowStep.branch_condition() -> Optional[Dict[str, List[str]]]
  • WorkflowStep.context_from() -> Optional[List[str]]
  • WorkflowStep.evaluator()
  • WorkflowStep.executor()
  • WorkflowStep.max_retries() -> int
  • WorkflowStep.next_steps() -> Optional[List[str]]
  • WorkflowStep.on_error() -> str
  • WorkflowStep.output_file() -> Optional[str]
  • WorkflowStep.output_json() -> Optional[Any]
  • WorkflowStep.output_pydantic() -> Optional[Any]
  • WorkflowStep.output_variable() -> Optional[str]
  • WorkflowStep.quality_check() -> bool
  • WorkflowStep.rerun() -> bool
  • WorkflowStep.retain_full_context() -> bool
  • WorkflowStep.to_dict() -> Dict[str, Any]
  • praisonaiagents.loop(step: Any = None, steps: Optional[List[Any]] = None, over: Optional[str] = None, from_csv: Optional[str] = None, from_file: Optional[str] = None, var_name: str = 'item', parallel: bool = False, max_workers: Optional[int] = None, output_variable: Optional[str] = None) -> Loop
  • praisonaiagents.parallel(steps: List) -> Parallel
  • praisonaiagents.repeat(step: Any, until: Optional[Callable[[WorkflowContext], bool]] = None, max_iterations: int = 10) -> Repeat
  • praisonaiagents.route(routes: Dict[str, List], default: Optional[List] = None) -> Route

DB

Types:

from praisonaiagents import db

Memory

Types:

from praisonaiagents import Memory, MemoryBackend, MemoryConfig

Methods:

  • Memory.build_context_for_task(task_descr: str, user_id: Optional[str] = None, additional: str = '', max_items: int = 3, include_in_output: Optional[bool] = None) -> str
  • Memory.calculate_quality_metrics(output: str, expected_output: str, llm: Optional[str] = None, custom_prompt: Optional[str] = None) -> Dict[str, float]
  • Memory.compute_quality_score(completeness: float, relevance: float, clarity: float, accuracy: float, weights: Dict[str, float] = None) -> float
  • Memory.delete_long_term(memory_id: str) -> bool
  • Memory.delete_memories(memory_ids: List[str]) -> int
  • Memory.delete_memories_matching(query: str, memory_type: Optional[str] = None, limit: int = 10) -> int
  • Memory.delete_memory(memory_id: str, memory_type: Optional[str] = None) -> bool
  • Memory.delete_short_term(memory_id: str) -> bool
  • Memory.finalize_task_output(content: str, agent_name: str, quality_score: float, threshold: float = 0.7, metrics: Dict[str, Any] = None, task_id: str = None)
  • Memory.get_all_memories() -> List[Dict[str, Any]]
  • Memory.get_learn_context() -> str
  • Memory.learn()
  • Memory.reset_all()
  • Memory.reset_entity_only()
  • Memory.reset_long_term()
  • Memory.reset_short_term()
  • Memory.reset_user_memory()
  • Memory.search(query: str, user_id: Optional[str] = None, agent_id: Optional[str] = None, run_id: Optional[str] = None, limit: int = 5, rerank: bool = False, **kwargs) -> List[Dict[str, Any]]
  • Memory.search_entity(query: str, limit: int = 5) -> List[Dict[str, Any]]
  • Memory.search_long_term(query: str, limit: int = 5, relevance_cutoff: float = 0.0, min_quality: float = 0.0, rerank: bool = False, **kwargs) -> List[Dict[str, Any]]
  • Memory.search_short_term(query: str, limit: int = 5, min_quality: float = 0.0, relevance_cutoff: float = 0.0, rerank: bool = False, **kwargs) -> List[Dict[str, Any]]
  • Memory.search_user_memory(user_id: str, query: str, limit: int = 5, rerank: bool = False, **kwargs) -> List[Dict[str, Any]]
  • Memory.search_with_quality(query: str, min_quality: float = 0.0, memory_type: Literal['short', 'long'] = 'long', limit: int = 5) -> List[Dict[str, Any]]
  • Memory.store_entity(name: str, type_: str, desc: str, relations: str)
  • Memory.store_long_term(text: str, metadata: Dict[str, Any] = None, completeness: float = None, relevance: float = None, clarity: float = None, accuracy: float = None, weights: Dict[str, float] = None, evaluator_quality: float = None)
  • Memory.store_quality(text: str, quality_score: float, task_id: Optional[str] = None, iteration: Optional[int] = None, metrics: Optional[Dict[str, float]] = None, memory_type: Literal['short', 'long'] = 'long') -> None
  • Memory.store_short_term(text: str, metadata: Dict[str, Any] = None, completeness: float = None, relevance: float = None, clarity: float = None, accuracy: float = None, weights: Dict[str, float] = None, evaluator_quality: float = None)
  • Memory.store_user_memory(user_id: str, text: str, extra: Dict[str, Any] = None)
  • MemoryConfig.to_dict() -> Dict[str, Any]

Knowledge

Types:

from praisonaiagents import Chunking, ChunkingStrategy, Knowledge, KnowledgeConfig

Methods:

  • Chunking.SUPPORTED_CHUNKERS() -> Dict[str, Any]
  • Chunking.call(text: Union[str, List[str]], **kwargs) -> Union[List[Any], List[List[Any]]]
  • Chunking.chunk(text: Union[str, List[str]], **kwargs) -> Union[List[Any], List[List[Any]]]
  • Chunking.chunker()
  • Chunking.embedding_model()
  • Knowledge.add(file_path, user_id = None, agent_id = None, run_id = None, metadata = None)
  • Knowledge.chunker()
  • Knowledge.config()
  • Knowledge.delete(memory_id)
  • Knowledge.delete_all(user_id = None, agent_id = None, run_id = None)
  • Knowledge.get(memory_id)
  • Knowledge.get_all(user_id = None, agent_id = None, run_id = None)
  • Knowledge.get_corpus_stats()
  • Knowledge.history(memory_id)
  • Knowledge.index(path: str, incremental: bool = True, force: bool = False, include_glob: list = None, exclude_glob: list = None, user_id: str = None, agent_id: str = None, run_id: str = None)
  • Knowledge.markdown()
  • Knowledge.memory()
  • Knowledge.normalize_content(content)
  • Knowledge.reset()
  • Knowledge.search(query, user_id = None, agent_id = None, run_id = None, rerank = None, **kwargs)
  • Knowledge.store(content, user_id = None, agent_id = None, run_id = None, metadata = None)
  • Knowledge.update(memory_id, data)
  • KnowledgeConfig.to_dict() -> Dict[str, Any]

RAG

Types:

from praisonaiagents import CitationsMode, ContextPack, RAG, RAGCitation, RAGConfig, RAGResult, RetrievalConfig, RetrievalPolicy

Methods:

  • ContextPack.format_for_prompt(include_sources: bool = True) -> str
  • ContextPack.from_dict(data: Dict[str, Any]) -> 'ContextPack'
  • ContextPack.has_citations() -> bool
  • ContextPack.to_dict() -> Dict[str, Any]
  • RAG.aquery(question: str, user_id: Optional[str] = None, agent_id: Optional[str] = None, run_id: Optional[str] = None, **kwargs) -> RAGResult
  • RAG.aretrieve(query: str, **kwargs) -> ContextPack
  • RAG.astream(question: str, user_id: Optional[str] = None, agent_id: Optional[str] = None, run_id: Optional[str] = None, **kwargs) -> AsyncIterator[str]
  • RAG.get_citations(question: str, user_id: Optional[str] = None, agent_id: Optional[str] = None, run_id: Optional[str] = None, **kwargs) -> List[Citation]
  • RAG.llm()
  • RAG.query(question: str, user_id: Optional[str] = None, agent_id: Optional[str] = None, run_id: Optional[str] = None, **kwargs) -> RAGResult
  • RAG.retrieve(query: str, **kwargs) -> ContextPack
  • RAG.stream(question: str, user_id: Optional[str] = None, agent_id: Optional[str] = None, run_id: Optional[str] = None, **kwargs) -> Iterator[str]
  • RAGCitation.from_dict(data: Dict[str, Any]) -> 'Citation'
  • RAGCitation.to_dict() -> Dict[str, Any]
  • RAGConfig.from_dict(data: Dict[str, Any]) -> 'RAGConfig'
  • RAGConfig.to_dict() -> Dict[str, Any]
  • RAGResult.format_answer_with_citations() -> str
  • RAGResult.from_dict(data: Dict[str, Any]) -> 'RAGResult'
  • RAGResult.has_citations() -> bool
  • RAGResult.to_dict() -> Dict[str, Any]
  • RetrievalConfig.from_dict(data: Dict[str, Any]) -> 'RetrievalConfig'
  • RetrievalConfig.get_strategy(corpus_stats = None)
  • RetrievalConfig.get_token_budget(model_name: Optional[str] = None)
  • RetrievalConfig.should_retrieve(query: str, force: bool = False, skip: bool = False) -> bool
  • RetrievalConfig.to_dict() -> Dict[str, Any]
  • RetrievalConfig.to_knowledge_config() -> Dict[str, Any]
  • RetrievalConfig.to_rag_config() -> Dict[str, Any]

Handoff

Types:

from praisonaiagents import Handoff, RECOMMENDED_PROMPT_PREFIX, handoff, handoff_filters, prompt_with_handoff_instructions

Methods:

  • Handoff.default_tool_description() -> str
  • Handoff.default_tool_name() -> str
  • Handoff.execute_async(source_agent: 'Agent', prompt: str, context: Optional[Dict[str, Any]] = None) -> HandoffResult
  • Handoff.execute_programmatic(source_agent: 'Agent', prompt: str, context: Optional[Dict[str, Any]] = None) -> HandoffResult
  • Handoff.to_tool_function(source_agent: 'Agent') -> Callable
  • Handoff.tool_description() -> str
  • Handoff.tool_name() -> str
  • praisonaiagents.handoff(agent: 'Agent', tool_name_override: Optional[str] = None, tool_description_override: Optional[str] = None, on_handoff: Optional[Callable] = None, input_type: Optional[type] = None, input_filter: Optional[Callable[[HandoffInputData], HandoffInputData]] = None, config: Optional[HandoffConfig] = None, context_policy: Optional[str] = None, timeout_seconds: Optional[float] = None, max_concurrent: Optional[int] = None, detect_cycles: Optional[bool] = None, max_depth: Optional[int] = None) -> Handoff
  • handoff_filters.keep_last_n_messages(n: int) -> Callable[[HandoffInputData], HandoffInputData]
  • handoff_filters.remove_all_tools(data: HandoffInputData) -> HandoffInputData
  • handoff_filters.remove_system_messages(data: HandoffInputData) -> HandoffInputData
  • praisonaiagents.prompt_with_handoff_instructions(base_prompt: str, agent: 'Agent') -> str

Guardrails

Types:

from praisonaiagents import GuardrailAction, GuardrailConfig, LLMGuardrail

Methods:

  • GuardrailConfig.to_dict() -> Dict[str, Any]
  • LLMGuardrail.call(task_output: TaskOutput) -> Tuple[bool, Union[str, TaskOutput]]

Planning

Types:

from praisonaiagents import ApprovalCallback, Plan, PlanStep, PlanStorage, PlanningConfig, READ_ONLY_TOOLS, RESTRICTED_TOOLS, TodoItem, TodoList

Methods:

Skills

Types:

from praisonaiagents import SkillLoader, SkillManager, SkillMetadata, SkillProperties, SkillsConfig

Methods:

Session

Types:

from praisonaiagents import Session

Methods:

  • Session.Agent(name: str, role: str = 'Assistant', instructions: Optional[str] = None, tools: Optional[List[Any]] = None, memory: bool = True, knowledge: Optional[List[str]] = None, **kwargs) -> 'Agent'
  • Session.add_knowledge(source: str) -> None
  • Session.add_memory(text: str, memory_type: str = 'long', **metadata) -> None
  • Session.chat(message: str, **kwargs) -> str
  • Session.clear_memory(memory_type: str = 'all') -> None
  • Session.create_agent(*args, **kwargs) -> 'Agent'
  • Session.get_context(query: str, max_items: int = 3) -> str
  • Session.get_state(key: str, default: Any = None) -> Any
  • Session.increment_state(key: str, increment: int = 1, default: int = 0) -> None
  • Session.knowledge() -> 'Knowledge'
  • Session.memory() -> 'Memory'
  • Session.restore_state() -> Dict[str, Any]
  • Session.save_state(state_data: Dict[str, Any]) -> None
  • Session.search_knowledge(query: str, limit: int = 5) -> List[Dict[str, Any]]
  • Session.search_memory(query: str, memory_type: str = 'long', limit: int = 5) -> List[Dict[str, Any]]
  • Session.send_message(message: str, **kwargs) -> str
  • Session.set_state(key: str, value: Any) -> None

MCP

Types:

from praisonaiagents import MCP

Methods:

Telemetry

Types:

from praisonaiagents import MinimalTelemetry, TelemetryCollector, cleanup_telemetry_resources, disable_performance_mode, disable_telemetry, enable_performance_mode, enable_telemetry, get_telemetry

Methods:

Observability

Types:

from praisonaiagents import FlowDisplay, obs, track_workflow

Methods:

Context

Types:

from praisonaiagents import ContextManager, ManagerConfig

Methods:

  • ContextManager.capture_llm_boundary(messages: List[Dict[str, Any]], tools: List[Dict[str, Any]]) -> SnapshotHookData
  • ContextManager.emergency_truncate(messages: List[Dict[str, Any]], target_tokens: int) -> List[Dict[str, Any]]
  • ContextManager.estimate_tokens(text: str, validate: bool = False) -> Tuple[int, Optional[EstimationMetrics]]
  • ContextManager.get_history() -> List[Dict[str, Any]]
  • ContextManager.get_last_snapshot_hook() -> Optional[SnapshotHookData]
  • ContextManager.get_resolved_config() -> Dict[str, Any]
  • ContextManager.get_stats() -> Dict[str, Any]
  • ContextManager.get_tool_budget(tool_name: str) -> int
  • ContextManager.process(messages: List[Dict[str, Any]], system_prompt: str = '', tools: Optional[List[Dict[str, Any]]] = None, trigger: Literal['turn', 'tool_call', 'manual', 'overflow'] = 'turn') -> Dict[str, Any]
  • ContextManager.register_snapshot_callback(callback: Callable[[SnapshotHookData], None]) -> None
  • ContextManager.reset() -> None
  • ContextManager.set_tool_budget(tool_name: str, max_tokens: int, protected: bool = False) -> None
  • ContextManager.truncate_tool_output(tool_name: str, output: str) -> str
  • ManagerConfig.from_env() -> 'ManagerConfig'
  • ManagerConfig.merge(**overrides) -> 'ManagerConfig'
  • ManagerConfig.to_dict() -> Dict[str, Any]

Config

Types:

from praisonaiagents import AutonomyConfig, AutonomyLevel, CachingConfig, ExecutionConfig, ExecutionPreset, GuardrailConfig, HooksConfig, KnowledgeConfig, MemoryConfig, MultiAgentExecutionConfig, MultiAgentHooksConfig, MultiAgentMemoryConfig, MultiAgentOutputConfig, MultiAgentPlanningConfig, OutputConfig, OutputPreset, PlanningConfig, ReflectionConfig, SkillsConfig, TemplateConfig, WebConfig, WebSearchProvider

Methods:

  • AutonomyConfig.to_dict() -> Dict[str, Any]
  • CachingConfig.to_dict() -> Dict[str, Any]
  • ExecutionConfig.to_dict() -> Dict[str, Any]
  • GuardrailConfig.to_dict() -> Dict[str, Any]
  • HooksConfig.to_dict() -> Dict[str, Any]
  • KnowledgeConfig.to_dict() -> Dict[str, Any]
  • MemoryConfig.to_dict() -> Dict[str, Any]
  • MultiAgentExecutionConfig.to_dict() -> Dict[str, Any]
  • MultiAgentHooksConfig.to_dict() -> Dict[str, Any]
  • MultiAgentMemoryConfig.to_dict() -> Dict[str, Any]
  • MultiAgentOutputConfig.to_dict() -> Dict[str, Any]
  • MultiAgentPlanningConfig.to_dict() -> Dict[str, Any]
  • OutputConfig.to_dict() -> Dict[str, Any]
  • PlanningConfig.to_dict() -> Dict[str, Any]
  • ReflectionConfig.to_dict() -> Dict[str, Any]
  • SkillsConfig.to_dict() -> Dict[str, Any]
  • TemplateConfig.to_dict() -> Dict[str, Any]
  • WebConfig.to_dict() -> Dict[str, Any]

Display

Types:

from praisonaiagents import async_display_callbacks, clean_triple_backticks, display_error, display_generating, display_instruction, display_interaction, display_self_reflection, display_tool_call, error_logs, register_display_callback, sync_display_callbacks

Methods:

  • praisonaiagents.clean_triple_backticks(text: str) -> str
  • praisonaiagents.display_error(message: str, console = None)
  • praisonaiagents.display_generating(content: str = '', start_time: Optional[float] = None)
  • praisonaiagents.display_instruction(message: str, console = None, agent_name: str = None, agent_role: str = None, agent_tools: List[str] = None)
  • praisonaiagents.display_interaction(message, response, markdown = True, generation_time = None, console = None, agent_name = None, agent_role = None, agent_tools = None, task_name = None, task_description = None, task_id = None, metrics = None)
  • praisonaiagents.display_self_reflection(message: str, console = None)
  • praisonaiagents.display_tool_call(message: str, console = None, tool_name: str = None, tool_input: dict = None, tool_output: str = None, elapsed_time: float = None, success: bool = True)
  • praisonaiagents.register_display_callback(display_type: str, callback_fn, is_async: bool = False)

Utilities

Types:

from praisonaiagents import ArrayMode, is_policy_string, parse_policy_string, resolve, resolve_autonomy, resolve_caching, resolve_context, resolve_execution, resolve_guardrail_policies, resolve_guardrails, resolve_hooks, resolve_knowledge, resolve_memory, resolve_output, resolve_planning, resolve_reflection, resolve_routing, resolve_skills, resolve_web

Methods:

  • praisonaiagents.is_policy_string(value: str) -> bool
  • praisonaiagents.parse_policy_string(value: str) -> tuple
  • praisonaiagents.resolve(value: Any, param_name: str, config_class: Optional[Type] = None, presets: Optional[Dict[str, Any]] = None, default: Any = None, instance_check: Optional[Callable[[Any], bool]] = None, url_schemes: Optional[Dict[str, str]] = None, array_mode: Optional[str] = None, string_mode: Optional[str] = None) -> Any
  • praisonaiagents.resolve_autonomy(value: Any, config_class: Type) -> Any
  • praisonaiagents.resolve_caching(value: Any, config_class: Type) -> Any
  • praisonaiagents.resolve_context(value: Any, config_class: Type) -> Any
  • praisonaiagents.resolve_execution(value: Any, config_class: Type) -> Any
  • praisonaiagents.resolve_guardrail_policies(policies: list, config_class: Type) -> Any
  • praisonaiagents.resolve_guardrails(value: Any, config_class: Type) -> Any
  • praisonaiagents.resolve_hooks(value: Any, config_class: Optional[Type] = None) -> Any
  • praisonaiagents.resolve_knowledge(value: Any, config_class: Type) -> Any
  • praisonaiagents.resolve_memory(value: Any, config_class: Type) -> Any
  • praisonaiagents.resolve_output(value: Any, config_class: Type) -> Any
  • praisonaiagents.resolve_planning(value: Any, config_class: Type) -> Any
  • praisonaiagents.resolve_reflection(value: Any, config_class: Type) -> Any
  • praisonaiagents.resolve_routing(value: Any, config_class: Type) -> Any
  • praisonaiagents.resolve_skills(value: Any, config_class: Type) -> Any
  • praisonaiagents.resolve_web(value: Any, config_class: Type) -> Any

Other

Types:

from praisonaiagents import EmbeddingResult, Task, aembedding, aembeddings, embedding, embeddings, get_dimensions

Methods:

  • Task.execute_callback(task_output: TaskOutput) -> None
  • Task.execute_callback_sync(task_output: TaskOutput) -> None
  • Task.initialize_memory()
  • Task.store_in_memory(content: str, agent_name: str = None, task_id: str = None)
  • praisonaiagents.aembedding(input: Union[str, List[str]], model: str = 'text-embedding-3-small', dimensions: Optional[int] = None, encoding_format: str = 'float', timeout: float = 600.0, api_key: Optional[str] = None, api_base: Optional[str] = None, metadata: Optional[Dict[str, Any]] = None, **kwargs) -> EmbeddingResult
  • praisonaiagents.aembeddings(input: Union[str, List[str]], model: str = 'text-embedding-3-small', dimensions: Optional[int] = None, encoding_format: str = 'float', timeout: float = 600.0, api_key: Optional[str] = None, api_base: Optional[str] = None, metadata: Optional[Dict[str, Any]] = None, **kwargs) -> EmbeddingResult
  • praisonaiagents.embedding(input: Union[str, List[str]], model: str = 'text-embedding-3-small', dimensions: Optional[int] = None, encoding_format: str = 'float', timeout: float = 600.0, api_key: Optional[str] = None, api_base: Optional[str] = None, metadata: Optional[Dict[str, Any]] = None, **kwargs) -> EmbeddingResult
  • praisonaiagents.embeddings(input: Union[str, List[str]], model: str = 'text-embedding-3-small', dimensions: Optional[int] = None, encoding_format: str = 'float', timeout: float = 600.0, api_key: Optional[str] = None, api_base: Optional[str] = None, metadata: Optional[Dict[str, Any]] = None, **kwargs) -> EmbeddingResult
  • praisonaiagents.get_dimensions(model_name: str) -> int

Wrapper (praisonai)

Types:

from praisonai import CloudProvider, Deploy, DeployConfig, DeployType, PraisonAI, __version__

CLI

Methods:

  • praisonai --help
  • praisonai acp acp-main --help
  • praisonai agents create --help
  • praisonai agents info --help
  • praisonai agents list --help
  • praisonai audit agent-centric --help
  • praisonai batch batch-run --help
  • praisonai batch list --help
  • praisonai batch report --help
  • praisonai batch stats --help
  • praisonai benchmark agent --help
  • praisonai benchmark benchmark-callback --help
  • praisonai benchmark cli --help
  • praisonai benchmark compare --help
  • praisonai benchmark litellm --help
  • praisonai benchmark profile --help
  • praisonai benchmark sdk --help
  • praisonai benchmark workflow --help
  • praisonai bot bot-callback --help
  • praisonai bot discord --help
  • praisonai bot slack --help
  • praisonai bot telegram --help
  • praisonai browser browser-callback --help
  • praisonai browser click --help
  • praisonai browser navigate --help
  • praisonai browser open --help
  • praisonai browser profiles --help
  • praisonai browser screenshot --help
  • praisonai browser snapshot --help
  • praisonai browser status --help
  • praisonai browser type --help
  • praisonai call call-main --help
  • praisonai chat --help
  • praisonai chat chat-main --help
  • praisonai code --help
  • praisonai code code-main --help
  • praisonai commit commit-main --help
  • praisonai completion bash --help
  • praisonai completion completion-callback --help
  • praisonai completion fish --help
  • praisonai completion zsh --help
  • praisonai config get --help
  • praisonai config list --help
  • praisonai config path --help
  • praisonai config reset --help
  • praisonai config set --help
  • praisonai context add --help
  • praisonai context clear --help
  • praisonai context compact --help
  • praisonai context export --help
  • praisonai context grep --help
  • praisonai context list --help
  • praisonai context show --help
  • praisonai context stats --help
  • praisonai context tail --help
  • praisonai debug acp --help
  • praisonai debug debug-callback --help
  • praisonai debug interactive --help
  • praisonai debug lsp --help
  • praisonai debug trace --help
  • praisonai deploy aws --help
  • praisonai deploy azure --help
  • praisonai deploy docker --help
  • praisonai deploy gcp --help
  • praisonai diag diag-callback --help
  • praisonai diag export --help
  • praisonai docs api-md --help
  • praisonai docs generate --help
  • praisonai docs list --help
  • praisonai docs report --help
  • praisonai docs run --help
  • praisonai docs run-all --help
  • praisonai docs serve --help
  • praisonai docs stats --help
  • praisonai doctor cleanup --help
  • praisonai doctor config --help
  • praisonai doctor db --help
  • praisonai doctor doctor-callback --help
  • praisonai doctor env --help
  • praisonai doctor mcp --help
  • praisonai doctor network --help
  • praisonai doctor performance --help
  • praisonai doctor selftest --help
  • praisonai doctor tools --help
  • praisonai doctor troubleshoot --help
  • praisonai endpoints list --help
  • praisonai endpoints test --help
  • praisonai environment check --help
  • praisonai environment doctor --help
  • praisonai environment view --help
  • praisonai eval accuracy --help
  • praisonai eval judge --help
  • praisonai eval list-judges --help
  • praisonai eval performance --help
  • praisonai examples info --help
  • praisonai examples list --help
  • praisonai examples report --help
  • praisonai examples run --help
  • praisonai examples run-all --help
  • praisonai examples stats --help
  • praisonai hooks add --help
  • praisonai hooks list --help
  • praisonai hooks remove --help
  • praisonai knowledge add --help
  • praisonai knowledge index --help
  • praisonai knowledge list --help
  • praisonai knowledge search --help
  • praisonai loop help --help
  • praisonai loop loop-main --help
  • praisonai lsp logs --help
  • praisonai lsp lsp-callback --help
  • praisonai lsp start --help
  • praisonai lsp status --help
  • praisonai lsp stop --help
  • praisonai mcp add --help
  • praisonai mcp auth --help
  • praisonai mcp describe --help
  • praisonai mcp list --help
  • praisonai mcp logout --help
  • praisonai mcp mcp-callback --help
  • praisonai mcp remove --help
  • praisonai mcp run --help
  • praisonai mcp status --help
  • praisonai mcp sync --help
  • praisonai mcp test --help
  • praisonai mcp tools --help
  • praisonai memory add --help
  • praisonai memory clear --help
  • praisonai memory search --help
  • praisonai memory show --help
  • praisonai memory status --help
  • praisonai package install --help
  • praisonai package list --help
  • praisonai package uninstall --help
  • praisonai plugins disable --help
  • praisonai plugins doctor --help
  • praisonai plugins enable --help
  • praisonai plugins info --help
  • praisonai plugins list --help
  • praisonai plugins plugins-callback --help
  • praisonai profile imports --help
  • praisonai profile optimize --help
  • praisonai profile profile-callback --help
  • praisonai profile query --help
  • praisonai profile snapshot --help
  • praisonai profile startup --help
  • praisonai profile suite --help
  • praisonai rag chat --help
  • praisonai rag eval --help
  • praisonai rag index --help
  • praisonai rag query --help
  • praisonai rag serve --help
  • praisonai realtime realtime-main --help
  • praisonai recipe apply --help
  • praisonai recipe create --help
  • praisonai recipe info --help
  • praisonai recipe install --help
  • praisonai recipe judge --help
  • praisonai recipe list --help
  • praisonai recipe optimize --help
  • praisonai recipe run --help
  • praisonai recipe serve --help
  • praisonai registry list --help
  • praisonai registry serve --help
  • praisonai replay cleanup --help
  • praisonai replay context --help
  • praisonai replay dashboard --help
  • praisonai replay delete --help
  • praisonai replay flow --help
  • praisonai replay list --help
  • praisonai replay show --help
  • praisonai research research-main --help
  • praisonai retrieval index --help
  • praisonai retrieval query --help
  • praisonai retrieval search --help
  • praisonai rules add --help
  • praisonai rules clear --help
  • praisonai rules list --help
  • praisonai run --help
  • praisonai run run-main --help
  • praisonai sandbox explain --help
  • praisonai sandbox list --help
  • praisonai sandbox recreate --help
  • praisonai sandbox sandbox-callback --help
  • praisonai sandbox status --help
  • praisonai schedule delete --help
  • praisonai schedule describe --help
  • praisonai schedule list --help
  • praisonai schedule logs --help
  • praisonai schedule restart --help
  • praisonai schedule schedule-callback --help
  • praisonai schedule start --help
  • praisonai schedule stats --help
  • praisonai schedule stop --help
  • praisonai serve a2a --help
  • praisonai serve a2u --help
  • praisonai serve acp --help
  • praisonai serve agents --help
  • praisonai serve docs --help
  • praisonai serve gateway --help
  • praisonai serve lsp --help
  • praisonai serve mcp --help
  • praisonai serve rag --help
  • praisonai serve recipe --help
  • praisonai serve registry --help
  • praisonai serve scheduler --help
  • praisonai serve serve-callback --help
  • praisonai serve start --help
  • praisonai serve status --help
  • praisonai serve stop --help
  • praisonai serve ui --help
  • praisonai serve unified --help
  • praisonai session delete --help
  • praisonai session export --help
  • praisonai session import --help
  • praisonai session list --help
  • praisonai session resume --help
  • praisonai session show --help
  • praisonai skills check --help
  • praisonai skills create --help
  • praisonai skills eligible --help
  • praisonai skills info --help
  • praisonai skills install --help
  • praisonai skills list --help
  • praisonai skills search --help
  • praisonai skills validate --help
  • praisonai standardise check --help
  • praisonai standardise fix --help
  • praisonai standardise init --help
  • praisonai standardise report --help
  • praisonai templates create --help
  • praisonai templates list --help
  • praisonai test info --help
  • praisonai test interactive --help
  • praisonai test run --help
  • praisonai todo add --help
  • praisonai todo done --help
  • praisonai todo list --help
  • praisonai tools info --help
  • praisonai tools list --help
  • praisonai tools test --help
  • praisonai tools validate --help
  • praisonai traces disable --help
  • praisonai traces enable --help
  • praisonai traces list --help
  • praisonai traces status --help
  • praisonai train agents --help
  • praisonai train list --help
  • praisonai train llm --help
  • praisonai train show --help
  • praisonai train train-callback --help
  • praisonai ui chat --help
  • praisonai ui code --help
  • praisonai ui gradio --help
  • praisonai ui realtime --help
  • praisonai ui ui-main --help
  • praisonai version check --help
  • praisonai version show --help
  • praisonai version version-callback --help
  • praisonai workflow create --help
  • praisonai workflow list --help
  • praisonai workflow run --help

TypeScript

Types/Exports:

export { Agent, Agents, PraisonAIAgents, Router } from "./agent";
export type { PraisonAIAgentsConfig, SimpleAgentConfig, SimpleRouteConfig, SimpleRouterConfig } from "./agent";
export { AudioAgent, createAudioAgent } from "./agent/audio";
export type { AudioAgentConfig, AudioProvider, AudioSpeakOptions, AudioSpeakResult, AudioTranscribeOptions, AudioTranscribeResult } from "./agent/audio";
export { ContextAgent, createContextAgent } from "./agent/context";
export { Handoff, handoff, handoffFilters } from "./agent/handoff";
export { ImageAgent, createImageAgent } from "./agent/image";
export { PromptExpanderAgent, createPromptExpanderAgent } from "./agent/prompt-expander";
export { QueryRewriterAgent, createQueryRewriterAgent } from "./agent/query-rewriter";
export { DeepResearchAgent, createDeepResearchAgent } from "./agent/research";
export { RouterAgent, createRouter, routeConditions } from "./agent/router";
export { // Agent loop
  createAgentLoop, // DevTools
  enableDevTools, // MCP
  createMCP, // Middleware (renamed to avoid conflicts)
  createCachingMiddleware, // Models
  createModel, // Multimodal
  createImagePart, // Next.js
  createRouteHandler, // OAuth for MCP
  type OAuthClientProvider, // Server adapters
  createHttpHandler, // Speech & Transcription
  generateSpeech, // Telemetry (AI SDK v6 parity)
  configureTelemetry, // Tool Approval (AI SDK v6 parity)
  ApprovalManager, // Tools
  defineTool, // UI Message (AI SDK v6 parity)
  convertToModelMessages, AIAgentStep, AIEmbedManyResult, AIEmbedOptions, AIEmbedResult, AIFilePart, AIGenerateImageOptions, AIGenerateImageResult, AIGenerateObjectOptions, AIGenerateObjectResult, AIGenerateTextOptions, AIGenerateTextResult, AIImagePart, AIMiddleware, AIMiddlewareConfig, AIModelMessage, AISpan, AISpanKind, AISpanOptions, AISpanStatus, AIStreamObjectOptions, AIStreamObjectResult, AIStreamTextOptions, AIStreamTextResult, AITelemetryEvent, AITelemetrySettings, AITextPart, AIToolDefinition, AITracer, AgentLoop, DANGEROUS_PATTERNS, MCPClientType, MODEL_ALIASES, SPEECH_MODELS, TRANSCRIPTION_MODELS, ToolApprovalDeniedError, ToolApprovalTimeoutError, aiEmbed, aiEmbedMany, aiGenerateImage, aiGenerateObject, aiGenerateText, aiStreamObject, aiStreamText, applyMiddleware, autoEnableDevTools, base64ToUint8Array, clearAICache, clearEvents, closeAllMCPClients, closeMCPClient, convertToUIMessages, createAILoggingMiddleware, createAISpan, createApprovalResponse, createDangerousPatternChecker, createDevToolsMiddleware, createExpressHandler, createFastifyHandler, createFilePart, createHonoHandler, createMultimodalMessage, createNestHandler, createPagesHandler, createPdfPart, createSystemMessage, createTelemetryMiddleware, createTelemetrySettings, createTextMessage, createTextPart, createToolSet, disableAITelemetry, disableDevTools, enableAITelemetry, functionToTool, getAICacheStats, getApprovalManager, getDevToolsState, getDevToolsUrl, getEvents, getMCPClient, getModel, getTelemetrySettings, getToolsNeedingApproval, getTracer, hasModelAlias, hasPendingApprovals, initOpenTelemetry, isDangerous, isDataUrl, isDevToolsEnabled, isTelemetryEnabled, isUrl, listModelAliases, mcpToolsToAITools, parseModel, pipeUIMessageStreamToResponse, recordEvent, resolveModelAlias, safeValidateUIMessages, setApprovalManager, stopAfterSteps, stopWhen, stopWhenNoToolCalls, toMessageContent, toUIMessageStreamResponse, transcribe, uint8ArrayToBase64, validateUIMessages, withApproval, withSpan, wrapModel } from "./ai";
export { AutoAgents, createAutoAgents } from "./auto";
export { BaseCache, FileCache, MemoryCache, createFileCache, createMemoryCache } from "./cache";
export { CLI_SPEC_VERSION, executeCommand, parseArgs } from "./cli";
export { // Autonomy Mode
  AutonomyManager, // Background Jobs
  JobQueue, // Checkpoints
  CheckpointManager, // Cost Tracker
  CostTracker, // External Agents
  BaseExternalAgent, // Fast Context
  FastContext, // Flow Display
  FlowDisplay, // Git Integration
  GitManager, // Interactive TUI
  InteractiveTUI, // N8N Integration
  N8NIntegration, // Repo Map
  RepoMap, // Sandbox Executor
  SandboxExecutor, // Scheduler
  Scheduler, // Slash Commands
  SlashCommandHandler, AiderAgent, ClaudeCodeAgent, CodexCliAgent, CommandValidator, CostTokenUsage, DEFAULT_BLOCKED_COMMANDS, DEFAULT_BLOCKED_PATHS, DEFAULT_IGNORE_PATTERNS, DiffViewer, FileCheckpointStorage, FileJobStorage, GeminiCliAgent, GenericExternalAgent, HistoryManager, MODEL_PRICING, MODE_POLICIES, MemoryCheckpointStorage, MemoryJobStorage, StatusDisplay, cliApprovalPrompt, createAutonomyManager, createCheckpointManager, createCostTracker, createDiffViewer, createExternalAgent, createFastContext, createFileCheckpointStorage, createFileJobStorage, createFlowDisplay, createGitManager, createHistoryManager, createInteractiveTUI, createJobQueue, createN8NIntegration, createRepoMap, createSandboxExecutor, createScheduler, createSlashCommandHandler, createStatusDisplay, cronExpressions, estimateTokens, executeSlashCommand, externalAgentAsTool, formatCost, getExternalAgentRegistry, getQuickContext, getRepoTree, isSlashCommand, parseSlashCommand, registerCommand, renderWorkflow, sandboxExec, triggerN8NWebhook } from "./cli/features";
export { createDbAdapter, db, getDefaultDbAdapter, setDefaultDbAdapter } from "./db";
export type { DbAdapter, DbConfig, DbMessage, DbRun, DbTrace } from "./db";
export { MemoryPostgresAdapter, NeonPostgresAdapter, PostgresSessionStorage, createMemoryPostgres, createNeonPostgres, createPostgresSessionStorage } from "./db/postgres";
export { MemoryRedisAdapter, UpstashRedisAdapter, createMemoryRedis, createUpstashRedis } from "./db/redis";
export { SQLiteAdapter, createSQLiteAdapter } from "./db/sqlite";
export { // LLM-as-Judge
  Judge, AccuracyJudge, CriteriaJudge, EvalResults, EvalSuite, Evaluator, RecipeJudge, accuracyEval, addJudge, addOptimizationRule, containsKeywordsCriterion, createDefaultEvaluator, createEvalResults, createEvaluator, getJudge, getOptimizationRule, lengthCriterion, listJudges, listOptimizationRules, noHarmfulContentCriterion, parseJudgeResponse, performanceEval, relevanceCriterion, reliabilityEval, removeJudge, removeOptimizationRule } from "./eval";
export { AgentEventBus, AgentEvents, EventEmitterPubSub, PubSub, createEventBus, createPubSub } from "./events";
export { LLMGuardrail, createLLMGuardrail } from "./guardrails/llm-guardrail";
export { DisplayTypes, HooksManager, WorkflowHooksExecutor, clearAllCallbacks, clearApprovalCallback, createHooksManager, createLoggingOperationHooks, createLoggingWorkflowHooks, createTimingWorkflowHooks, createValidationOperationHooks, createWorkflowHooks, executeCallback, executeSyncCallback, getRegisteredDisplayTypes, hasApprovalCallback, registerApprovalCallback, registerDisplayCallback, requestApproval, unregisterDisplayCallback } from "./hooks";
export { // Computer Use
  createComputerUse, ComputerUseClient, createCLIApprovalPrompt, createComputerUseAgent } from "./integrations/computer-use";
export { BaseObservabilityProvider, ConsoleObservabilityProvider, LangfuseObservabilityProvider, MemoryObservabilityProvider, ObservabilityTraceContext, createConsoleObservability, createLangfuseObservability, createMemoryObservability } from "./integrations/observability";
export { // Natural Language Postgres
  createNLPostgres, NLPostgresClient, NLPostgresConfig, createPostgresTool } from "./integrations/postgres";
export { // Slack
  createSlackBot, SlackBot, parseSlackMessage, verifySlackSignature } from "./integrations/slack";
export { BaseVectorStore, ChromaVectorStore, MemoryVectorStore, PineconeVectorStore, QdrantVectorStore, VectorQueryResult, WeaviateVectorStore, createChromaStore, createMemoryVectorStore, createPineconeStore, createQdrantStore, createWeaviateStore } from "./integrations/vector";
export { BaseVoiceProvider, ElevenLabsVoiceProvider, OpenAIVoiceProvider, createElevenLabsVoice, createOpenAIVoice } from "./integrations/voice";
export { GraphRAG, GraphStore, createGraphRAG } from "./knowledge/graph-rag";
export { BaseReranker, CohereReranker, CrossEncoderReranker, LLMReranker, createCohereReranker, createCrossEncoderReranker, createLLMReranker } from "./knowledge/reranker";
export { // Provider classes
  OpenAIProvider, // Provider factory and utilities
  createProvider, // Provider registry (extensibility API)
  ProviderRegistry, // Types
  type LLMProvider, AnthropicProvider, BaseProvider, GoogleProvider, ProviderMessage, ProviderToolDefinition, createProviderRegistry, getAvailableProviders, getDefaultProvider, getDefaultRegistry, hasProvider, isProviderAvailable, listProviders, parseModelString, registerBuiltinProviders, registerProvider, unregisterProvider } from "./llm/providers";
export { ADAPTERS, AISDK_PROVIDERS, COMMUNITY_PROVIDERS, PROVIDER_ALIASES } from "./llm/providers/ai-sdk/types";
export { MCPClient, MCPSecurity, MCPServer, MCPSessionManager, createApiKeyPolicy, createMCPClient, createMCPSecurity, createMCPServer, createMCPSession, createRateLimitPolicy, getMCPTools } from "./mcp";
export { AutoMemory, AutoMemoryKnowledgeBase, AutoMemoryVectorStore, DEFAULT_POLICIES, createAutoMemory, createLLMSummarizer } from "./memory/auto-memory";
export { DocsManager, createDocsManager } from "./memory/docs-manager";
export { FileMemory, createFileMemory } from "./memory/file-memory";
export { MemoryHooks, createEncryptionHooks, createLoggingHooks, createMemoryHooks, createValidationHooks } from "./memory/hooks";
export { Memory, createMemory } from "./memory/memory";
export type { MemoryConfig, MemoryEntry } from "./memory/memory";
export { RulesManager, createRulesManager, createSafetyRules } from "./memory/rules-manager";
export { // Adapters
  NoopObservabilityAdapter, // Constants
  OBSERVABILITY_TOOLS, // Global adapter management
  setObservabilityAdapter, // Types
  type SpanKind, ConsoleObservabilityAdapter, MemoryObservabilityAdapter, clearAdapterCache, createConsoleAdapter, createMemoryAdapter, createObservabilityAdapter, getObservabilityAdapter, getObservabilityToolInfo, hasObservabilityToolEnvVar, listObservabilityTools, noopAdapter, resetObservabilityAdapter, trace } from "./observability";
export { Plan, PlanStep, PlanStorage, PlanningAgent, TaskAgent, TodoItem, TodoList, createPlan, createPlanStorage, createPlanningAgent, createTaskAgent, createTodoList } from "./planning";
export { SkillManager, createSkillManager, parseSkillFile } from "./skills";
export { AgentTelemetry, PerformanceMonitor, TelemetryCollector, TelemetryIntegration, cleanupTelemetry, createAgentTelemetry, createConsoleSink, createHTTPSink, createPerformanceMonitor, createTelemetryIntegration, disableTelemetry, enableTelemetry, getTelemetry } from "./telemetry";
export { // Subagent Tool (agent-as-tool pattern)
  SubagentTool, BaseTool, FunctionTool, ToolRegistry, ToolResult, ToolValidationError, createDelegator, createSubagentTool, createSubagentTools, createTool, getRegistry, getTool, registerTool, tool, validateTool } from "./tools";
export { airweaveSearch, bedrockBrowserClick, bedrockBrowserFill, bedrockBrowserNavigate, bedrockCodeInterpreter, codeExecution, codeMode, createCustomTool, exaSearch, firecrawlCrawl, firecrawlScrape, parallelSearch, perplexitySearch, registerCustomTool, registerLocalTool, registerNpmTool, superagentGuard, superagentRedact, superagentVerify, tavilyCrawl, tavilyExtract, tavilySearch, valyuBioSearch, valyuCompanyResearch, valyuEconomicsSearch, valyuFinanceSearch, valyuPaperSearch, valyuPatentSearch, valyuSecSearch, valyuWebSearch } from "./tools/builtins";
export { MissingDependencyError, MissingEnvVarError, ToolsRegistry, composeMiddleware, createLoggingMiddleware, createRateLimitMiddleware, createRedactionMiddleware, createRetryMiddleware, createTimeoutMiddleware, createToolsRegistry, createTracingMiddleware, createValidationMiddleware, getToolsRegistry, resetToolsRegistry } from "./tools/registry";
export type { InstallHints, PraisonTool, RedactionHooks, RegisteredTool, ToolCapabilities, ToolExecutionContext, ToolExecutionResult, ToolFactory, ToolHooks, ToolInstallStatus, ToolLimits, ToolLogger, ToolMetadata, ToolMiddleware, ToolParameterProperty, ToolParameterSchema } from "./tools/registry";
export { registerBuiltinTools, tools } from "./tools/tools";
export { // New: Python-parity Loop and Repeat classes
  Loop, // WorkflowStep class
  WorkflowStep, Repeat, Workflow, loop, loopPattern, parallel, repeat, repeatPattern, route } from "./workflows";
export type { LoopConfig, LoopResult, RepeatConfig, RepeatContext, RepeatResult, StepContextConfig, StepExecutionConfig, StepOutputConfig, StepResult, StepRoutingConfig, WorkflowContext, WorkflowStepConfig } from "./workflows";
export { createWorkflowFromYAML, loadWorkflowFromFile, parseYAMLWorkflow, validateWorkflowDefinition } from "./workflows/yaml-parser";

Optional Plugins

External tools are available via praisonai-tools package:

pip install praisonai-tools

See PraisonAI-tools for available tools.