https://github.com/clivern/tyran
🐺 A Vector Search as a Service.
https://github.com/clivern/tyran
Last synced: 9 months ago
JSON representation
🐺 A Vector Search as a Service.
- Host: GitHub
- URL: https://github.com/clivern/tyran
- Owner: Clivern
- License: mit
- Created: 2015-08-26T23:31:56.000Z (over 10 years ago)
- Default Branch: main
- Last Pushed: 2025-04-19T08:32:31.000Z (9 months ago)
- Last Synced: 2025-04-19T11:50:07.173Z (9 months ago)
- Language: Python
- Homepage: https://shorturl.at/N0dPH
- Size: 870 KB
- Stars: 2
- Watchers: 2
- Forks: 1
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
- Security: SECURITY.md
Awesome Lists containing this project
README
Tyran
A Vector Search as a Service.
`Tyran` is a vector search as a service, designed to efficiently retrieve relevant context for large language models (`LLMs`). `Tyran` organizes documents alongside their associated metadata, such as topic, project or team, to enhance the search process.
## Quick Start
> [!IMPORTANT]
>
> Make sure you have docker and docker-compose installed for the quick start.
To run `Tyran` with `sqlite` and `qdrant` on port `8000` on docker.
```bash
$ wget https://raw.githubusercontent.com/Clivern/Tyran/main/docker-compose-sqlite.yml \
-O docker-compose.yml
$ export OPENAI_API_KEY=~~key goes here~~
$ docker-compose up -d
```
To run `Tyran` with `mysql` and `qdrant` on port `8000` on docker.
```bash
$ wget https://raw.githubusercontent.com/Clivern/Tyran/main/docker-compose-mysql.yml \
-O docker-compose.yml
$ export DB_USERNAME=tyran
$ export DB_PASSWORD=D1q9f0C2PEW
$ export OPENAI_API_KEY=~~key goes here~~
$ docker-compose up -d
```
To test the setup, create a simple document and then query it.
```bash
$ curl -X POST \
http://127.0.0.1:8000/api/v1/document \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{"content": "Hello World", "metadata": {"type":"testdata"}}'
{
"id": "3d0ffff3-5d05-46e3-84c3-b805aad93a81",
"content": "Hello World",
"metadata": {
"type": "testdata"
},
"createdAt": "2024-09-06T11:16:00",
"updatedAt": "2024-09-06T11:16:00"
}
$ curl -X POST \
http://127.0.0.1:8000/api/v1/document/search \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{"text": "hi world", "limit": 1, "metadata": {"type":"testdata"}}'
[
{
"id": "3d0ffff3-5d05-46e3-84c3-b805aad93a81",
"content": "Hello World",
"metadata": {
"type": "testdata"
},
"createdAt": "2024-09-06T11:13:27",
"updatedAt": "2024-09-06T11:13:27",
"score": 0.85183966
}
]
```
## Versioning
For transparency into our release cycle and in striving to maintain backward compatibility, Tyran is maintained under the [Semantic Versioning guidelines](https://semver.org/) and release process is predictable and business-friendly.
See the [Releases section of our GitHub project](https://github.com/Clivern/Tyran/releases) for changelogs for each release version of Tyran. It contains summaries of the most noteworthy changes made in each release. Also see the [Milestones section](https://github.com/Clivern/Tyran/milestones) for the future roadmap.
## Bug tracker
If you have any suggestions, bug reports, or annoyances please report them to our issue tracker at https://github.com/Clivern/Tyran/issues
## Security Issues
If you discover a security vulnerability within Tyran, please send an email to [hello@clivern.com](mailto:hello@clivern.com)
## Contributing
We are an open source, community-driven project so please feel free to join us. see the [contributing guidelines](CONTRIBUTING.md) for more details.
## License
© 2024, Tyran. Released under [MIT License](https://opensource.org/licenses/mit-license.php).
**Tyran** is authored and maintained by [@Clivern](https://github.com/clivern).