summaryrefslogtreecommitdiffstats
path: root/etc/tool/provider_init.py
diff options
context:
space:
mode:
authorabc <98614666+xtekky@users.noreply.github.com>2023-10-06 20:51:36 +0200
committerabc <98614666+xtekky@users.noreply.github.com>2023-10-06 20:51:36 +0200
commitfdd8ef1fc3741ac9472b3f9f6e46cf65827566aa (patch)
treeff5efeecf9dd91e1b74b98ca21671e315cf61979 /etc/tool/provider_init.py
parent~ | Merge pull request #997 from hlohaus/all (diff)
downloadgpt4free-fdd8ef1fc3741ac9472b3f9f6e46cf65827566aa.tar
gpt4free-fdd8ef1fc3741ac9472b3f9f6e46cf65827566aa.tar.gz
gpt4free-fdd8ef1fc3741ac9472b3f9f6e46cf65827566aa.tar.bz2
gpt4free-fdd8ef1fc3741ac9472b3f9f6e46cf65827566aa.tar.lz
gpt4free-fdd8ef1fc3741ac9472b3f9f6e46cf65827566aa.tar.xz
gpt4free-fdd8ef1fc3741ac9472b3f9f6e46cf65827566aa.tar.zst
gpt4free-fdd8ef1fc3741ac9472b3f9f6e46cf65827566aa.zip
Diffstat (limited to 'etc/tool/provider_init.py')
-rw-r--r--etc/tool/provider_init.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/etc/tool/provider_init.py b/etc/tool/provider_init.py
new file mode 100644
index 00000000..22f21d4d
--- /dev/null
+++ b/etc/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()