返回提交历史
Modified
g4f/api/__init__.py
+1
-33
XFEstudio/gpt4free
Update __init__.py
538c0bb2
代码差异
1 个文件
+1
-33
@@ -360,39 +360,7 @@ class Api:
360
360
361
361
return FileResponse(target, media_type=content_type)
362
362
363
@self.app.get("/providers")
364
async def providers():
365
model_list = [{
366
'id': provider.__name__,
367
'object': 'provider',
368
'created': 0,
369
'url': provider.url,
370
'label': getattr(provider, "label", None),
371
} for provider in __providers__ if provider.working]
372
return JSONResponse(model_list)
373
374
@self.app.get("/providers/{provider}")
375
async def providers_info(provider: str):
376
if provider not in ProviderUtils.convert:
377
return JSONResponse({"error": "The model does not exist."}, 404)
378
provider: ProviderType = ProviderUtils.convert[provider]
379
def safe_get_models(provider: ProviderType) -> list[str]:
380
try:
381
return provider.get_models() if hasattr(provider, "get_models") else []
382
except:
383
return []
384
provider_info = {
385
'id': provider.__name__,
386
'object': 'provider',
387
'created': 0,
388
'url': provider.url,
389
'label': getattr(provider, "label", None),
390
'models': safe_get_models(provider),
391
'image_models': getattr(provider, "image_models", []) or [],
392
'vision_models': [model for model in [getattr(provider, "default_vision_model", None)] if model],
393
'params': [*provider.get_parameters()] if hasattr(provider, "get_parameters") else []
394
}
395
return JSONResponse(provider_info)
363
396
364
397
365
def format_exception(e: Exception, config: Union[ChatCompletionsConfig, ImageGenerationConfig], image: bool = False) -> str:
398
366
last_provider = {} if not image else g4f.get_last_provider(True)