Metadata-Version: 2.5
Name: otari-haystack
Version: 1.0.0
Summary: An integration between the Otari LLM gateway and Haystack
Project-URL: Documentation, https://github.com/deepset-ai/haystack-core-integrations/tree/main/integrations/otari#readme
Project-URL: Issues, https://github.com/deepset-ai/haystack-core-integrations/issues
Project-URL: Source, https://github.com/deepset-ai/haystack-core-integrations/tree/main/integrations/otari
Author-email: deepset GmbH <info@deepset.ai>
License-Expression: Apache-2.0
License-File: LICENSE.txt
Keywords: chat generator,embedder,haystack,llm gateway,otari,ranker
Classifier: Development Status :: 4 - Beta
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Requires-Python: >=3.10
Requires-Dist: haystack-ai>=3.0.0
Requires-Dist: httpx>=0.27.0
Requires-Dist: more-itertools>=9.0.0
Requires-Dist: openai>=1.99.2
Requires-Dist: pydantic>=2.12.0
Requires-Dist: tqdm>=4.48.0
Description-Content-Type: text/markdown

# otari-haystack

[![PyPI - Version](https://img.shields.io/pypi/v/otari-haystack.svg)](https://pypi.org/project/otari-haystack)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/otari-haystack.svg)](https://pypi.org/project/otari-haystack)

- [Integration page](https://haystack.deepset.ai/integrations/otari)
- [Changelog](https://github.com/deepset-ai/haystack-core-integrations/blob/main/integrations/otari/CHANGELOG.md)

---

## Contributing

Refer to the general [Contribution Guidelines](https://github.com/deepset-ai/haystack-core-integrations/blob/main/CONTRIBUTING.md).

The integration tests run against a local Otari gateway. To start one, export `OPENAI_API_KEY`, `COHERE_API_KEY`, and
`ANTHROPIC_API_KEY` for the providers it routes to, and a new API key as `OTARI_API_KEY`, which the gateway accepts and
the tests send. The gateway doesn't start while one of these is unset; for a provider you don't test, any placeholder
value works. Then start the gateway and run the integration tests:

```bash
export OTARI_API_KEY="tk-$(python3 -c 'import secrets; print(secrets.token_urlsafe(48))')"
docker compose up -d --wait
hatch run test:integration
```

Stop the gateway afterward with `docker compose down`.

To run the chat generator and embedder tests against otari.ai instead, export an otari.ai API key as `OTARI_API_KEY`
and the API root of your account's region as `OTARI_API_BASE_URL`, for example `https://eu.api.otari.ai/api/v1`, and
run:

```bash
hatch run test:integration -k "(chat_generator or embedder) and not cohere and not anthropic"
```
