-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathworkbuddy_server_gemini.py
93 lines (68 loc) · 2.12 KB
/
workbuddy_server_gemini.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
import os
import json
import google.generativeai as genai
from dotenv import load_dotenv
from flask import Flask, request, jsonify, send_from_directory
def load_prompt(fname):
with open(fname, "r") as f:
return "".join(f.readlines())
load_dotenv()
genai.configure(api_key=os.environ["GEMINI_API_KEY"])
generation_config = {
"temperature": 1,
"top_p": 0.95,
"top_k": 40,
"max_output_tokens": 8192,
"response_mime_type": "application/json",
}
system_instruction = load_prompt("./prompts/system_instruction.txt")
model = genai.GenerativeModel(
model_name="gemini-1.5-flash",
generation_config=generation_config,
system_instruction=system_instruction,
)
app = Flask(__name__)
@app.route('/')
def serve_html():
return send_from_directory('.', 'hello_gemini.html')
@app.route('/classify', methods=['POST'])
def classify_page():
data = json.dumps(request.json, indent=4)
print(data, type(data))
response = model.generate_content(data)
print(response.text, type(response.text))
return jsonify(response.text)
if __name__ == '__main__':
app.run(debug=True)
# import os
# import google.generativeai as genai
# from dotenv import load_dotenv
# def load_prompt(fname):
# with open(fname, "r") as f:
# return "".join(f.readlines())
# load_dotenv()
# genai.configure(api_key=os.environ["GEMINI_API_KEY"])
# generation_config = {
# "temperature": 1,
# "top_p": 0.95,
# "top_k": 40,
# "max_output_tokens": 8192,
# "response_mime_type": "application/json",
# }
# system_instruction = load_prompt("./prompts/system_instruction.txt")
# model = genai.GenerativeModel(
# model_name="gemini-1.5-flash",
# generation_config=generation_config,
# system_instruction=system_instruction,
# )
# chat_session = model.start_chat()
# while True:
# # Get the multiline input
# msg = '''
# {
# "page_title" : "Download or install libraries to access Gemini",
# "page_url" : "https://ai.google.dev/gemini-api/docs/downloads",
# }
# '''
# response = chat_session.send_message(msg)
# print(response.text)