GaborToth2 commited on
Commit
5cfff76
·
1 Parent(s): 3e73402

Implement Cohere API

Browse files
Files changed (2) hide show
  1. app.py +26 -11
  2. requirements.txt +2 -1
app.py CHANGED
@@ -1,11 +1,15 @@
1
  import gradio as gr
2
  from huggingface_hub import InferenceClient
 
 
3
 
4
  """
5
  For more information on `huggingface_hub` Inference API support, please check the docs: https://huggingface.co/docs/huggingface_hub/v0.22.2/en/guides/inference
6
  """
7
  client = InferenceClient("HuggingFaceH4/zephyr-7b-beta")
8
-
 
 
9
 
10
  def respond(
11
  message,
@@ -14,6 +18,7 @@ def respond(
14
  max_tokens,
15
  temperature,
16
  top_p,
 
17
  ):
18
  messages = [{"role": "system", "content": system_message}]
19
 
@@ -27,17 +32,26 @@ def respond(
27
 
28
  response = ""
29
 
30
- for message in client.chat_completion(
31
- messages,
32
- max_tokens=max_tokens,
33
- stream=True,
34
- temperature=temperature,
35
- top_p=top_p,
36
- ):
37
- token = message.choices[0].delta.content
38
-
39
- response += token
40
  yield response
 
 
 
 
 
 
 
 
 
 
 
41
 
42
 
43
  """
@@ -56,6 +70,7 @@ demo = gr.ChatInterface(
56
  step=0.05,
57
  label="Top-p (nucleus sampling)",
58
  ),
 
59
  ],
60
  )
61
 
 
1
  import gradio as gr
2
  from huggingface_hub import InferenceClient
3
+ import os
4
+ import cohere
5
 
6
  """
7
  For more information on `huggingface_hub` Inference API support, please check the docs: https://huggingface.co/docs/huggingface_hub/v0.22.2/en/guides/inference
8
  """
9
  client = InferenceClient("HuggingFaceH4/zephyr-7b-beta")
10
+ COHERE_API_KEY = os.getenv("COHERE_API_KEY")
11
+ client_cohere = cohere.Client(COHERE_API_KEY)
12
+ COHERE_MODEL = "command-r-plus"
13
 
14
  def respond(
15
  message,
 
18
  max_tokens,
19
  temperature,
20
  top_p,
21
+ use_cohere_api,
22
  ):
23
  messages = [{"role": "system", "content": system_message}]
24
 
 
32
 
33
  response = ""
34
 
35
+ if not use_cohere_api:
36
+ cohere_response = client_cohere.chat(
37
+ message=message,
38
+ model=COHERE_MODEL,
39
+ temperature=temperature,
40
+ max_tokens=max_tokens
41
+ )
42
+ response = cohere_response.text
 
 
43
  yield response
44
+ else:
45
+ for message in client.chat_completion(
46
+ messages,
47
+ max_tokens=max_tokens,
48
+ temperature=temperature,
49
+ top_p=top_p,
50
+ ):
51
+ token = message.choices[0].delta.content
52
+
53
+ response += token
54
+ yield response
55
 
56
 
57
  """
 
70
  step=0.05,
71
  label="Top-p (nucleus sampling)",
72
  ),
73
+ gr.Checkbox(label="Use Cohere API", default=False),
74
  ],
75
  )
76
 
requirements.txt CHANGED
@@ -1 +1,2 @@
1
- huggingface_hub==0.25.2
 
 
1
+ huggingface_hub==0.25.2
2
+ cohere