summaryrefslogtreecommitdiffstats
path: root/tool/provider_init.py
diff options
context:
space:
mode:
authorBagus Indrayana <bagusindrayanaindo@gmail.com>2023-08-17 15:30:52 +0200
committerBagus Indrayana <bagusindrayanaindo@gmail.com>2023-08-17 15:30:52 +0200
commit74ecdee78466104e57eb7488e682b564988fcd88 (patch)
treebbc764ba3248e80f20dde55e5b382b3f3d382575 /tool/provider_init.py
parentadd proxy and remove stream (diff)
parent~ (diff)
downloadgpt4free-74ecdee78466104e57eb7488e682b564988fcd88.tar
gpt4free-74ecdee78466104e57eb7488e682b564988fcd88.tar.gz
gpt4free-74ecdee78466104e57eb7488e682b564988fcd88.tar.bz2
gpt4free-74ecdee78466104e57eb7488e682b564988fcd88.tar.lz
gpt4free-74ecdee78466104e57eb7488e682b564988fcd88.tar.xz
gpt4free-74ecdee78466104e57eb7488e682b564988fcd88.tar.zst
gpt4free-74ecdee78466104e57eb7488e682b564988fcd88.zip
Diffstat (limited to 'tool/provider_init.py')
-rw-r--r--tool/provider_init.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/tool/provider_init.py b/tool/provider_init.py
new file mode 100644
index 00000000..22f21d4d
--- /dev/null
+++ b/tool/provider_init.py
@@ -0,0 +1,33 @@
+from pathlib import Path
+
+
+def main():
+ content = create_content()
+ with open("g4f/provider/__init__.py", "w", encoding="utf-8") as f:
+ f.write(content)
+
+
+def create_content():
+ path = Path()
+ paths = path.glob("g4f/provider/*.py")
+ paths = [p for p in paths if p.name not in ["__init__.py", "base_provider.py"]]
+ classnames = [p.stem for p in paths]
+
+ import_lines = [f"from .{name} import {name}" for name in classnames]
+ import_content = "\n".join(import_lines)
+
+ classnames.insert(0, "BaseProvider")
+ all_content = [f' "{name}"' for name in classnames]
+ all_content = ",\n".join(all_content)
+ all_content = f"__all__ = [\n{all_content},\n]"
+
+ return f"""from .base_provider import BaseProvider
+{import_content}
+
+
+{all_content}
+"""
+
+
+if __name__ == "__main__":
+ main()