|
1 | 1 | import json, sys, g4f
|
2 | 2 |
|
| 3 | +g4f.version_check = False |
| 4 | + |
3 | 5 | AvailableProviders = json.loads(sys.argv[1])
|
4 | 6 |
|
5 | 7 | try:
|
6 | 8 | Query = json.loads(sys.argv[2])
|
7 | 9 | except:
|
8 | 10 | Query = {}
|
9 | 11 |
|
10 |
| -def FormatQueryMessages(Messages: tuple, Provider) -> tuple: |
| 12 | +def FormatQueryMessages(Messages: tuple) -> tuple: |
11 | 13 | BASE_MESSAGES = [{
|
12 |
| - 'role': 'user' if Provider == 'ChatBase' else 'system', |
| 14 | + 'role': 'system', |
13 | 15 | 'content': 'You are Ada Lovelace, a coding software developed to provide free access to OpenAI models. Your Github repository is "https://github.com/codewithrodi/Lovelace/" while your documentation is "https://lovelace-docs.codewithrodi.com/". Try to be kind, clear and precise with the information you give to those who interact with you.'
|
14 | 16 | }]
|
15 | 17 | return BASE_MESSAGES + [ {
|
16 |
| - 'role': 'user' if Provider == 'ChatBase' else Message.get('Role', 'user').lower(), |
| 18 | + 'role': Message.get('Role', 'user').lower(), |
17 | 19 | 'content': Message.get('Content') } for Message in Messages ]
|
18 | 20 |
|
19 | 21 | def GetProviderData(Provider) -> dict:
|
@@ -52,20 +54,21 @@ def MainFN() -> None:
|
52 | 54 | elif sys.argv[3] == 'API' or sys.argv[3] == 'WS':
|
53 | 55 | Model = Query['Model']
|
54 | 56 | Provider = None if Query['Provider'] == 'Automatic' else ImportProvider(Query['Provider'])
|
55 |
| - Messages = FormatQueryMessages(Query['Messages'], Query['Provider']) |
| 57 | + Messages = FormatQueryMessages(Query['Messages']) |
56 | 58 | if sys.argv[3] == 'API':
|
57 |
| - print(g4f.ChatCompletion.create( |
| 59 | + Response = g4f.ChatCompletion.create( |
58 | 60 | model=Model,
|
59 | 61 | provider=Provider,
|
60 |
| - messages=Messages)) |
| 62 | + messages=Messages) |
| 63 | + print(Response.join('\n')) |
61 | 64 | else:
|
62 | 65 | StreamedResponse = g4f.ChatCompletion.create(
|
63 | 66 | model=Model,
|
64 | 67 | messages=Messages,
|
65 | 68 | provider=Provider,
|
66 | 69 | stream=True)
|
67 | 70 | for Message in StreamedResponse:
|
68 |
| - print(Message) |
| 71 | + print(Message, end='', flush=True) |
69 | 72 | except Exception as GPTException:
|
70 | 73 | print(GPTException)
|
71 | 74 |
|
|
0 commit comments