lllyasviel / lllyasviel/stable-diffusion-webui-forge
Add .well-known/serviceinfo endpoint
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 13k
- Forks
- 1.7k
- PR merge metrics
- No merged PRs in 30d
Description
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 Forge 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
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the linked serviceinfo standard and live example, then locate the API routing entry point for the .well-known URI. Compare the response with the documented schema and the referenced AI Horde and Aphrodite PRs. Done means the serviceinfo endpoint is available and returns the agreed API and software metadata.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- api
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100