Toggle Menu
Prev Up Next

# `langchain_community.utilities.you`.YouSearchAPIWrapper

class langchain_community.utilities.you.YouSearchAPIWrapper

  Bases: `BaseModel`

  Wrapper for you.com Search API.

  To connect to the You.com api requires an API key which you can get at https://api.you.com. You can check out the docs at https://documentation.you.com.

  You need to set the environment variable YDC_API_KEY for retriever to operate.

  ydc_api_key

    you.com api key, if YDC_API_KEY is not set in the environment

    Type

      str, optional

  num_web_results

    The max number of web results to return, must be under 20

    Type

      int, optional

  safesearch

    Safesearch settings, one of off, moderate, strict, defaults to moderate

    Type

      str, optional

  country

    Country code, ex: ‘US’ for united states, see api docs for list

    Type

      str, optional

  k

    max number of Documents to return using results()

    Type

      int, optional

  n_hits

    Alias for num_web_results

    Type

      int, optional, deprecated

  n_snippets_per_hit

    limit the number of snippets returned per hit

    Type

      int, optional

  endpoint_type

    you.com endpoints: search, news, rag; web and snippet alias search rag returns {‘message’: ‘Forbidden’} @todo news endpoint

    Type

      str, optional

  Create a new model by parsing and validating input data from keyword arguments.

  Raises ValidationError if the input data cannot be parsed to form a valid model.

  param country: Optional[str] = None
  param endpoint_type: Literal['search', 'news', 'rag', 'snippet'] = 'search'
  param k: Optional[int] = None
  param n_hits: Optional[int] = None
  param n_snippets_per_hit: Optional[int] = None
  param num_web_results: Optional[int] = None
  param safesearch: Optional[str] = None
  param ydc_api_key: Optional[str] = None
  classmethod construct(_fields_set: Optional[SetStr] = None, **values: Any) → Model

    Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data. Default values are respected, but no other validation is performed. Behaves as if Config.extra = ‘allow’ was set since it adds all passed values

    Parameters

      - _fields_set (Optional[SetStr]) –

      - values (Any) –

    Return type

      Model

  copy(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, update: Optional[DictStrAny] = None, deep: bool = False) → Model

    Duplicate a model, optionally choose which fields to include, exclude and change.

    Parameters

      - include (Optional[Union[AbstractSetIntStr, MappingIntStrAny]]) – fields to include in new model

      - exclude (Optional[Union[AbstractSetIntStr, MappingIntStrAny]]) – fields to exclude from new model, as with values this takes precedence over include

      - update (Optional[DictStrAny]) – values to change/add in the new model. Note: the data is not validated before creating the new model: you should trust this data

      - deep (bool) – set to True to make a deep copy of the model

      - self (Model) –

    Returns

      new model instance

    Return type

      Model

  dict(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False) → DictStrAny

    Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.

    Parameters

      - include (Optional[Union[AbstractSetIntStr, MappingIntStrAny]]) –

      - exclude (Optional[Union[AbstractSetIntStr, MappingIntStrAny]]) –

      - by_alias (bool) –

      - skip_defaults (Optional[bool]) –

      - exclude_unset (bool) –

      - exclude_defaults (bool) –

      - exclude_none (bool) –

    Return type

      DictStrAny

  classmethod from_orm(obj: Any) → Model
    Parameters

      obj (Any) –

    Return type

      Model

  json(*, include: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, exclude: Optional[Union[AbstractSetIntStr, MappingIntStrAny]] = None, by_alias: bool = False, skip_defaults: Optional[bool] = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, encoder: Optional[Callable[[Any], Any]] = None, models_as_dict: bool = True, **dumps_kwargs: Any) → unicode

    Generate a JSON representation of the model, include and exclude arguments as per dict().

    encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().

    Parameters

      - include (Optional[Union[AbstractSetIntStr, MappingIntStrAny]]) –

      - exclude (Optional[Union[AbstractSetIntStr, MappingIntStrAny]]) –

      - by_alias (bool) –

      - skip_defaults (Optional[bool]) –

      - exclude_unset (bool) –

      - exclude_defaults (bool) –

      - exclude_none (bool) –

      - encoder (Optional[Callable[[Any], Any]]) –

      - models_as_dict (bool) –

      - dumps_kwargs (Any) –

    Return type

      unicode

  classmethod parse_file(path: Union[str, Path], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: Protocol = None, allow_pickle: bool = False) → Model
    Parameters

      - path (Union[str, Path]) –

      - content_type (unicode) –

      - encoding (unicode) –

      - proto (Protocol) –

      - allow_pickle (bool) –

    Return type

      Model

  classmethod parse_obj(obj: Any) → Model
    Parameters

      obj (Any) –

    Return type

      Model

  classmethod parse_raw(b: Union[str, bytes], *, content_type: unicode = None, encoding: unicode = 'utf8', proto: Protocol = None, allow_pickle: bool = False) → Model
    Parameters

      - b (Union[str, bytes]) –

      - content_type (unicode) –

      - encoding (unicode) –

      - proto (Protocol) –

      - allow_pickle (bool) –

    Return type

      Model

  raw_results(query: str, **kwargs: Any) → Dict

    Run query through you.com Search and return hits.

    Parameters

      - query (str) – The query to search for.

      - num_web_results – The maximum number of results to return.

      - safesearch – Safesearch settings, one of off, moderate, strict, defaults to moderate

      - country – Country code

      - kwargs (Any) –

    Return type

      Dict

    Returns: YouAPIOutput

  async raw_results_async(query: str, **kwargs: Any) → Dict

    Get results from the you.com Search API asynchronously.

    Parameters

      - query (str) –

      - kwargs (Any) –

    Return type

      Dict

  results(query: str, **kwargs: Any) → List[Document]

    Run query through you.com Search and parses results into Documents.

    Parameters

      - query (str) –

      - kwargs (Any) –

    Return type

      List[Document]

  async results_async(query: str, **kwargs: Any) → List[Document]
    Parameters

      - query (str) –

      - kwargs (Any) –

    Return type

      List[Document]

  classmethod schema(by_alias: bool = True, ref_template: unicode = '#/definitions/{model}') → DictStrAny
    Parameters

      - by_alias (bool) –

      - ref_template (unicode) –

    Return type

      DictStrAny

  classmethod schema_json(*, by_alias: bool = True, ref_template: unicode = '#/definitions/{model}', **dumps_kwargs: Any) → unicode
    Parameters

      - by_alias (bool) –

      - ref_template (unicode) –

      - dumps_kwargs (Any) –

    Return type

      unicode

  classmethod update_forward_refs(**localns: Any) → None

    Try to update ForwardRefs on fields based on this Model, globalns and localns.

    Parameters

      localns (Any) –

    Return type

      None

  classmethod validate(value: Any) → Model
    Parameters

      value (Any) –

    Return type

      Model

# Examples using YouSearchAPIWrapper

- For use in Chaining section