summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--README.md6
-rw-r--r--g4f/Provider/FlowGpt.py2
-rw-r--r--g4f/Provider/Liaobots.py5
-rw-r--r--g4f/Provider/__init__.py1
-rw-r--r--g4f/Provider/deprecated/Phind.py (renamed from g4f/Provider/Phind.py)9
-rw-r--r--g4f/Provider/deprecated/__init__.py3
-rw-r--r--g4f/errors.py3
-rw-r--r--g4f/gui/client/html/index.html1
8 files changed, 17 insertions, 13 deletions
diff --git a/README.md b/README.md
index 53891817..da412782 100644
--- a/README.md
+++ b/README.md
@@ -235,10 +235,10 @@ set G4F_PROXY=http://host:port
| ------ | ------- | ------- | ----- | ------ | ------ | ---- |
| [bing.com](https://bing.com/chat) | `g4f.Provider.Bing` | ❌ | ✔️ | ✔️ | ![Active](https://img.shields.io/badge/Active-brightgreen) | ❌ |
| [chat.openai.com](https://chat.openai.com) | `g4f.Provider.OpenaiChat` | ✔️ | ✔️ | ✔️ | ![Unknown](https://img.shields.io/badge/Active-brightgreen) | ✔️ |
-| [raycast.com](https://raycast.com) | `g4f.Provider.Raycast` | ✔️ | ✔️ | ✔️ | ![Unknown](https://img.shields.io/badge/Unknown-grey) | ✔️ |
| [you.com](https://you.com) | `g4f.Provider.You` | ✔️ | ✔️ | ✔️ | ![Active](https://img.shields.io/badge/Active-brightgreen) | ❌ |
+| [liaobots.site](https://liaobots.site) | `g4f.Provider.Liaobots` | ✔️ | ✔️ | ✔️ | ![Active](https://img.shields.io/badge/Active-brightgreen) | ❌ |
+| [raycast.com](https://raycast.com) | `g4f.Provider.Raycast` | ✔️ | ✔️ | ✔️ | ![Unknown](https://img.shields.io/badge/Unknown-grey) | ✔️ |
| [chat.geekgpt.org](https://chat.geekgpt.org) | `g4f.Provider.GeekGpt` | ✔️ | ✔️ | ✔️ | ![Inactive](https://img.shields.io/badge/Inactive-red) | ❌ |
-| [liaobots.site](https://liaobots.site) | `g4f.Provider.Liaobots` | ✔️ | ✔️ | ✔️ | ![Inactive](https://img.shields.io/badge/Inactive-red) | ❌ |
### GPT-3.5
@@ -293,11 +293,11 @@ set G4F_PROXY=http://host:port
| [huggingface.co](https://huggingface.co/chat) | `g4f.Provider.HuggingChat` | ❌ | ❌ | ✔️ | ![Unknown](https://img.shields.io/badge/Unknown-grey) | ❌ |
| [llama2.ai](https://www.llama2.ai) | `g4f.Provider.Llama2` | ❌ | ❌ | ✔️ | ![Active](https://img.shields.io/badge/Active-brightgreen) | ❌ |
| [labs.perplexity.ai](https://labs.perplexity.ai) | `g4f.Provider.PerplexityLabs` | ❌ | ❌ | ✔️ | ![Active](https://img.shields.io/badge/Active-brightgreen) | ❌ |
-| [phind.com](https://www.phind.com) | `g4f.Provider.Phind` | ❌ | ❌ | ✔️ | ![Unknown](https://img.shields.io/badge/Active-brightgreen) | ❌ |
| [pi.ai](https://pi.ai/talk) | `g4f.Provider.Pi` | ❌ | ❌ | ✔️ | ![Unknown](https://img.shields.io/badge/Active-brightgreen) | ❌ |
| [beta.theb.ai](https://beta.theb.ai) | `g4f.Provider.Theb` | ✔️ | ✔️ | ✔️ | ![Unknown](https://img.shields.io/badge/Unknown-grey) | ❌ |
| [free.chatgpt.org.uk](https://free.chatgpt.org.uk) | `g4f.Provider.FreeChatgpt` | ✔️ | ✔️ | ✔️ | ![Unknown](https://img.shields.io/badge/Unknown-grey) | ❌ |
| [theb.ai](https://theb.ai) | `g4f.Provider.ThebApi` | ❌ | ❌ | ❌ | ![Unknown](https://img.shields.io/badge/Unknown-grey) | ✔️ |
+| [phind.com](https://www.phind.com) | `g4f.Provider.Phind` | ❌ | ❌ | ✔️ | ![Inactive](https://img.shields.io/badge/Inactive-red) | ❌
| [open-assistant.io](https://open-assistant.io/chat) | `g4f.Provider.OpenAssistant` | ❌ | ❌ | ✔️ | ![Inactive](https://img.shields.io/badge/Inactive-red) | ✔️ |
### Models
diff --git a/g4f/Provider/FlowGpt.py b/g4f/Provider/FlowGpt.py
index b466a2e6..93e7955c 100644
--- a/g4f/Provider/FlowGpt.py
+++ b/g4f/Provider/FlowGpt.py
@@ -10,11 +10,9 @@ class FlowGpt(AsyncGeneratorProvider, ProviderModelMixin):
url = "https://flowgpt.com/chat"
working = True
supports_gpt_35_turbo = True
- supports_gpt_4 = True
supports_message_history = True
default_model = "gpt-3.5-turbo"
models = [
- "gpt-4",
"gpt-3.5-turbo",
"gpt-3.5-long",
"google-gemini",
diff --git a/g4f/Provider/Liaobots.py b/g4f/Provider/Liaobots.py
index 79e48ace..92154d7d 100644
--- a/g4f/Provider/Liaobots.py
+++ b/g4f/Provider/Liaobots.py
@@ -7,6 +7,7 @@ from aiohttp import ClientSession, BaseConnector
from ..typing import AsyncResult, Messages
from .base_provider import AsyncGeneratorProvider, ProviderModelMixin
from .helper import get_connector
+from ..errors import RateLimitError
models = {
"gpt-4": {
@@ -73,7 +74,7 @@ models = {
class Liaobots(AsyncGeneratorProvider, ProviderModelMixin):
url = "https://liaobots.site"
- working = False
+ working = True
supports_message_history = True
supports_gpt_35_turbo = True
supports_gpt_4 = True
@@ -122,6 +123,8 @@ class Liaobots(AsyncGeneratorProvider, ProviderModelMixin):
json={"authcode": ""},
verify_ssl=False
) as response:
+ if response.status == 401:
+ raise RateLimitError("Rate limit reached. Use a other provider or ip address")
response.raise_for_status()
cls._auth_code = (await response.json(content_type=None))["authCode"]
cls._cookie_jar = session.cookie_jar
diff --git a/g4f/Provider/__init__.py b/g4f/Provider/__init__.py
index 52ba0274..7832f871 100644
--- a/g4f/Provider/__init__.py
+++ b/g4f/Provider/__init__.py
@@ -51,7 +51,6 @@ from .Liaobots import Liaobots
from .Llama2 import Llama2
from .OnlineGpt import OnlineGpt
from .PerplexityLabs import PerplexityLabs
-from .Phind import Phind
from .Pi import Pi
from .Vercel import Vercel
from .Ylokh import Ylokh
diff --git a/g4f/Provider/Phind.py b/g4f/Provider/deprecated/Phind.py
index 096cdd29..c72bf09e 100644
--- a/g4f/Provider/Phind.py
+++ b/g4f/Provider/deprecated/Phind.py
@@ -5,13 +5,14 @@ import json
from urllib import parse
from datetime import datetime
-from ..typing import AsyncResult, Messages
-from .base_provider import AsyncGeneratorProvider
-from ..requests import StreamSession
+from ...typing import AsyncResult, Messages
+from ..base_provider import AsyncGeneratorProvider
+from ...requests import StreamSession
class Phind(AsyncGeneratorProvider):
url = "https://www.phind.com"
- working = True
+ working = False
+ lockdown = True
supports_stream = True
supports_message_history = True
diff --git a/g4f/Provider/deprecated/__init__.py b/g4f/Provider/deprecated/__init__.py
index 4d7eb5da..8ec5f2fc 100644
--- a/g4f/Provider/deprecated/__init__.py
+++ b/g4f/Provider/deprecated/__init__.py
@@ -22,4 +22,5 @@ from .Cromicle import Cromicle
from .Opchatgpts import Opchatgpts
from .Yqcloud import Yqcloud
from .Aichat import Aichat
-from .Berlin import Berlin \ No newline at end of file
+from .Berlin import Berlin
+from .Phind import Phind \ No newline at end of file
diff --git a/g4f/errors.py b/g4f/errors.py
index 5e821ded..00cf8cdb 100644
--- a/g4f/errors.py
+++ b/g4f/errors.py
@@ -35,4 +35,7 @@ class MissingAuthError(Exception):
...
class NoImageResponseError(Exception):
+ ...
+
+class RateLimitError(Exception):
... \ No newline at end of file
diff --git a/g4f/gui/client/html/index.html b/g4f/gui/client/html/index.html
index 887562c2..86ab157d 100644
--- a/g4f/gui/client/html/index.html
+++ b/g4f/gui/client/html/index.html
@@ -183,7 +183,6 @@
<option value="OpenaiChat">OpenaiChat</option>
<option value="Gemini">Gemini</option>
<option value="Liaobots">Liaobots</option>
- <option value="Phind">Phind</option>
<option value="You">You</option>
<option value="">----</option>
</select>