[alibaba/higress]higress的ai代理原生提供/v1/models接口

2025-11-04 755 views
0
Why do you need it?

大多数开源软件如open-webui等都通过/v1/models获取模型列表,让用户选择需要的模型 但是通过 higress 最了 ai 代理之后,客户端访问 higress,无法使用/v1/models获取模型列表

How could it be?

1.添加多个服务商 2.添加多个路由

Other related information

想要到效果: 1.客户端访问 higress,可以使用根据路由的匹配的规则获取这个授权用户可以访问的模型列表 2.未设置路由匹配规则的,需要通过服务商的/v1/models获取列表,如果服务商不支持,可以不返回(目前了解大多数都支持)

回答

0
/v1/models 接口是用 GET 方法来请求的。请求中并不包含任何模型信息,所以任何带有模型匹配规则的路由都无法匹配到。 “授权这个用户可以访问的”这是一个治理场景,并不是请求认证场景,无法在现有体系上直接实现。 假如后端一个大模型提供 gpt-*qwen-* 等多种模型,但关联到它的路由至配置了 gpt-* 的匹配条件,即便大模型支持 /v1/models 接口,网关直接转发大模型返回的模型列表也是不合适的。这样就还需要耦合路由匹配条件了。
1

1.应该是higress提供这个/v1/models的插件或者服务去查询路由规则 2.是治理场景,但是做个消费者授权,这个消费者查询models列表。应该返回它可以访问所有的模型列表 3.其实是第一条在结合,后端模型返回的结果去匹配然后返回客户端

9

cc @johnlanni

2

我也碰到类似的问题,在路由添加前缀以后,调/v1/models和/health接口都不通,在vllm引擎的logs里面,发现higress把前缀传进去了导致404,这个目前有办法解决么。

4

我也碰到类似的问题,在路由添加前缀以后,调/v1/models和/health接口都不通,在vllm引擎的logs里面,发现higress把前缀传进去了导致404,这个目前有办法解决么。

大模型是配的 OpenAI 类型的吗?

4

我也碰到类似的问题,在路由添加前缀以后,调/v1/models和/health接口都不通,在vllm引擎的logs里面,发现higress把前缀传进去了导致404,这个目前有办法解决么。

大模型是配的 OpenAI 类型的吗?

是的,OpenAI类型。

另外Ollama类型我也试过了。我前几天在https://github.com/alibaba/higress/issues/2083和你讨论过,当时路由还没加/{前缀}/v1是可以调得通的,后面加上前缀以后就不行了。

9

是的,OpenAI类型。

另外Ollama类型我也试过了。我前几天在https://github.com/alibaba/higress/issues/2083和你讨论过,当时路由还没加/{前缀}/v1是可以调得通的,后面加上前缀以后就不行了。

大概率是因为插件不支持这个接口,所以透传了。