{"record":{"id":"8ec6561db4194570","repo":"BerriAI/litellm","slug":"litellm-argilla-transformation-object-is-require","errorCode":null,"errorMessage":"'litellm.argilla_transformation_object' is required, to log your payload to Argilla.","messagePattern":"'litellm\\.argilla_transformation_object' is required, to log your payload to Argilla\\.","errorType":"exception","errorClass":"Exception","httpStatus":null,"severity":"error","filePath":"litellm/integrations/argilla.py","lineNumber":50,"sourceCode":"    non_serializable_types: Final = (\n        types.CoroutineType,\n        types.FunctionType,\n        types.GeneratorType,\n        BaseModel,\n    )\n    return not isinstance(value, non_serializable_types)\n\n\nclass ArgillaLogger(CustomBatchLogger):\n    def __init__(\n        self,\n        argilla_api_key: str | None = None,\n        argilla_dataset_name: str | None = None,\n        argilla_base_url: str | None = None,\n        **kwargs,\n    ):\n        if litellm.argilla_transformation_object is None:\n            raise Exception(\"'litellm.argilla_transformation_object' is required, to log your payload to Argilla.\")\n        self.validate_argilla_transformation_object(litellm.argilla_transformation_object)\n        self.argilla_transformation_object = litellm.argilla_transformation_object\n        self.default_credentials = self.get_credentials_from_env(\n            argilla_api_key=argilla_api_key,\n            argilla_dataset_name=argilla_dataset_name,\n            argilla_base_url=argilla_base_url,\n        )\n        self.sampling_rate: float = (\n            float(os.getenv(\"ARGILLA_SAMPLING_RATE\"))\n            if os.getenv(\"ARGILLA_SAMPLING_RATE\") is not None and os.getenv(\"ARGILLA_SAMPLING_RATE\").strip().isdigit()\n            else 1.0\n        )\n\n        self.async_httpx_client = get_async_httpx_client(llm_provider=httpxSpecialProvider.LoggingCallback)\n        _batch_size: Final = os.getenv(\"ARGILLA_BATCH_SIZE\", None) or litellm.argilla_batch_size\n        if _batch_size:\n            self.batch_size = int(_batch_size)\n        asyncio.create_task(self.periodic_flush())","sourceCodeStart":32,"sourceCodeEnd":68,"githubUrl":"https://github.com/BerriAI/litellm/blob/6c2dcb801bf2b75c18f1bb24140e7cf57465cc4d/litellm/integrations/argilla.py#L32-L68","documentation":"Error \"'litellm.argilla_transformation_object' is required, to log your payload to Argilla.\" thrown in BerriAI/litellm.","triggerScenarios":"Thrown at litellm/integrations/argilla.py:50 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Set litellm.argilla_transformation_object to a dict mapping Argilla fields before logging."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"6c2dcb801bf2b75c18f1bb24140e7cf57465cc4d","analyzedAt":"2026-08-15T07:12:03.035Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}