mirror of https://github.com/xtekky/gpt4free
Refactor API initialization to accept a list of ignored providers.
parent
2b3bc749b3
commit
36fe869a81
@ -1,12 +0,0 @@
|
|||||||
import g4f
|
|
||||||
from g4f.api import Api
|
|
||||||
|
|
||||||
create_chat_completion_original = g4f.ChatCompletion.create
|
|
||||||
list_ignored_providers=[]
|
|
||||||
|
|
||||||
def create_chat_completion(*args, **kwargs):
|
|
||||||
kwargs['ignored']=list_ignored_providers
|
|
||||||
return create_chat_completion_original(*args, **kwargs)
|
|
||||||
|
|
||||||
g4f.ChatCompletion.create=create_chat_completion
|
|
||||||
api=Api(g4f, debug=False)
|
|
@ -1,23 +0,0 @@
|
|||||||
import typing
|
|
||||||
from enum import Enum
|
|
||||||
from g4f import Provider
|
|
||||||
from g4f_api import ApiInterface
|
|
||||||
import typer
|
|
||||||
|
|
||||||
IgnoredProviders = Enum("ignore_providers", {key:key for key in Provider.__all__})
|
|
||||||
|
|
||||||
app = typer.Typer(help="Run the G4F API")
|
|
||||||
|
|
||||||
@app.command()
|
|
||||||
def main(
|
|
||||||
bind_str: str = typer.Argument(..., envvar="G4F_API_BIND_STR", help="The bind string."),
|
|
||||||
i_num_threads: int = typer.Option(1, envvar="G4F_API_NUM_THREADS", help="The number of threads."),
|
|
||||||
list_ignored_providers: typing.List[IgnoredProviders] = typer.Option([], envvar="G4F_API_LIST_IGNORED_PROVIDERS", help="List of providers to ignore when processing request."),
|
|
||||||
):
|
|
||||||
list_ignored_providers=[provider.name for provider in list_ignored_providers]
|
|
||||||
ApiInterface.list_ignored_providers=list_ignored_providers
|
|
||||||
ApiInterface.api.run(bind_str, i_num_threads)
|
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
app()
|
|
Loading…
Reference in New Issue