Iwebsearch¶
Classes¶
- class arshai.core.interfaces.iwebsearch.IWebSearchClient(*args, **kwargs)[source]¶
Bases:
ProtocolInterface defining the contract for web search clients. Any web search client implementation must conform to this interface.
- search(query, num_results=10, **kwargs)[source]¶
Perform synchronous web search.
- Parameters:
- Return type:
- Returns:
List of SearchResult objects
- async asearch(query, num_results=10, **kwargs)[source]¶
Perform asynchronous web search.
- Parameters:
- Return type:
- Returns:
List of SearchResult objects
- __init__(*args, **kwargs)¶
- class arshai.core.interfaces.iwebsearch.IWebSearchConfig(**data)[source]¶
Bases:
IDTOBase configuration for web search clients. This is a generalized configuration that can be extended for specific search engines.
- model_config: ClassVar[ConfigDict] = {'allow_mutation': False, 'arbitrary_types_allowed': True, 'smart_union': True, 'validate_assignment': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class arshai.core.interfaces.iwebsearch.IWebSearchResult(**data)[source]¶
Bases:
IDTORepresents a single search result.
- model_config: ClassVar[ConfigDict] = {'allow_mutation': False, 'arbitrary_types_allowed': True, 'smart_union': True, 'validate_assignment': True}¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].