Comfy-Org / Comfy-Org/ComfyUI

Add .well-known/serviceinfo endpoint

Open
#5,489 0 comments 0 reactions 0 assignees View on GitHub
Feature
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.