Add .well-known/serviceinfo endpoint
- Dominant language
- Python
- Stars
- 133k
- Forks
- 15.7k
- Avg merge
- 1d 6h
- Merged PRs (30d)
- 155
Description
### Feature Idea
The developers of the [AI Horde](https://aihorde.net), [koboldcpp](https://github.com/LostRuins/koboldcpp) and [aphrodite](https://github.com/PygmalionAI/aphrodite-engine) just agreed for a standard which would allow inference integrators to our APIs to quickly retrieve the information about the API they are working with.
We arranged that the information should live in a [.well-known ](https://en.wikipedia.org/wiki/Well-known_URI) URI and we chose `serviceinfo` as the endpoint to signify it's use in a service api.
We came up with [the following standard](https://github.com/Haidra-Org/AI-Horde/wiki/serviceinfo) (you can see a live example [here](https://aihorde.net/.well-known/serviceinfo))
```
{
"api": {
"aihorde": {
"rel_url": "/api/v2",
"documentation": "https://aihorde.net/api",
"name": "AI Horde API",
"version": "2.5"
}
},
"software": {
"homepage": "https://aihorde.net",
"logo": "https://aihorde.net/assets/img/logo.png",
"name": "AI Horde",
"repository": "https://github.com/Haidra-Org/AI-Horde",
"version": "4.44.0"
},
"version": "0.2"
}
```
The fields should be self-explanatory, but basically `api` holds info about each api is served (for example aphrodite serves both Open AI and KoboldAI APIs) whereas the `software` holds information about the software itself. The `version` on the root is the version of the `.well-known/serviceinfo` itself.
We think it would benefit everyone if ComfyUI onboard the same endpoint and we would welcome improvement and extensions on the `serviceinfo` standard we came up with.
Relevant PRs
Aphrodite: https://github.com/PygmalionAI/aphrodite-engine/pull/807
AI Horde: https://github.com/Haidra-Org/AI-Horde/pull/466
### Existing Solutions
Most inference APIs do not provide this information consistently. This is an attempt to standardize this for all of us.
### Other
_No response_
Contributor guide
Assessment
This issue has not been assessed yet.