bstraehle commited on
Commit
7abe6e1
1 Parent(s): d8958a0

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +34 -0
app.py ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import boto3, json, os
3
+
4
+ from dotenv import load_dotenv, find_dotenv
5
+ _ = load_dotenv(find_dotenv())
6
+
7
+ aws_access_key_id = os.environ['AWS_ACCESS_KEY_ID']
8
+ aws_secret_access_key = os.environ['AWS_SECRET_ACCESS_KEY']
9
+
10
+ bedrock_runtime = boto3.client(
11
+ aws_access_key_id=aws_access_key_id,
12
+ aws_secret_access_key=aws_secret_access_key,
13
+ service_name="bedrock-runtime",
14
+ region_name="us-west-2"
15
+ )
16
+
17
+ def complete(prompt):
18
+ args = {
19
+ "modelId": "anthropic.claude-v2",
20
+ "contentType": "application/json",
21
+ "accept": "*/*",
22
+ "body": "{\"prompt\":\"Human: " + prompt + "\\nAssistant:\",\"max_tokens_to_sample\":300,\"temperature\":1,\"top_k\":250,\"top_p\":0.999,\"stop_sequences\":[\"\\n\\nHuman:\"],\"anthropic_version\":\"bedrock-2023-05-31\"}"
23
+ }
24
+ response = bedrock_runtime.invoke_model(**args)
25
+ response_body = json.loads(response.get("body").read())
26
+ return response_body['completion']
27
+
28
+ gr.close_all()
29
+ demo = gr.Interface(fn=complete,
30
+ inputs=[gr.Textbox(label="Prompt", lines=1)],
31
+ outputs=[gr.Textbox(label="Completion", lines=1)],
32
+ title="Generative AI with LLM",
33
+ description="<a href='https://www.gradio.app/'>Gradio</a> UI using <a href='https://aws.amazon.com/bedrock/'>Amazon Bedrock</a> API with <a href='https://www.anthropic.com/index/claude-2'>Claude 2</a> LLM")
34
+ demo.launch()