ll7098ll commited on
Commit
d1b4f6b
·
verified ·
1 Parent(s): e4ecbb4

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +36 -49
app.py CHANGED
@@ -1,59 +1,46 @@
 
 
 
 
 
 
 
1
  import os
2
- import google.generativeai as genai
3
- import gradio as gr
4
 
5
- # Google Gemini API 키 설정
6
- genai.configure(api_key=os.environ["GEMINI_API_KEY"])
7
-
8
- # 모델 설정
9
- generation_config = {
10
- "temperature": 1,
11
- "top_p": 0.95,
12
- "top_k": 64,
13
- "max_output_tokens": 8192,
14
- "response_mime_type": "text/plain",
15
- }
16
- safety_settings = [
17
- {
18
- "category": "HARM_CATEGORY_HARASSMENT",
19
- "threshold": "BLOCK_MEDIUM_AND_ABOVE",
20
- },
21
- {
22
- "category": "HARM_CATEGORY_HATE_SPEECH",
23
- "threshold": "BLOCK_MEDIUM_AND_ABOVE",
24
- },
25
- {
26
- "category": "HARM_CATEGORY_SEXUALLY_EXPLICIT",
27
- "threshold": "BLOCK_MEDIUM_AND_ABOVE",
28
- },
29
- {
30
- "category": "HARM_CATEGORY_DANGEROUS_CONTENT",
31
- "threshold": "BLOCK_MEDIUM_AND_ABOVE",
32
- },
33
- ]
34
-
35
- model = genai.GenerativeModel(
36
- model_name="gemini-1.5-flash",
37
- safety_settings=safety_settings,
38
- generation_config=generation_config,
39
- system_instruction="교과 관련 개념이나 내용을 입력하면, 내용에 대해 이해할 수 있게 친절하게 설명하는 선생님. 다양한 예시와 구체적 사례를 들어서 상세하게 설명해줘. 2000자 이상 분량으로 설명글 작성. 출처 표시가 가능하면 출처표시",
40
  )
41
 
42
- chat_session = model.start_chat(history=[])
43
 
44
- # Gradio 챗봇 함수 정의
45
- def gemini_chat(text):
46
- response = chat_session.send_message(text)
47
- return response.text
48
 
49
- # Gradio 인터페이스 설정
50
  with gr.Blocks() as demo:
51
- gr.Markdown("## AI 선생님께 질문하기")
52
- Q = gr.Textbox(label="질문", placeholder="질문을 넣어주세요.")
53
- btn = gr.Button("질문하기")
54
- A = gr.TextArea(label="AI 선생님의 설명", placeholder="AI 선생님이 답변 중 입니다.")
55
 
56
- btn.click(gemini_chat, inputs=Q, outputs=A)
57
 
58
- # 데모 실행
59
  demo.launch()
 
1
+ # -*- coding: utf-8 -*-
2
+ """Untitled1.ipynb
3
+ Automatically generated by Colab.
4
+ Original file is located at
5
+ https://colab.research.google.com/drive/1huUmrgIbG1wwEKxs3zsCdRNir_IY5ICf
6
+ """
7
+
8
  import os
 
 
9
 
10
+ from openai import OpenAI
11
+ import openai
12
+
13
+ openai_api_key = os.getenv("OPENAI_API_KEY")
14
+
15
+ client = openai.OpenAI(api_key = openai_api_key)
16
+
17
+ def openai_chat(text):
18
+ from openai import OpenAI
19
+
20
+ completion = client.chat.completions.create(
21
+ model="gpt-4o",
22
+ messages=[
23
+ {"role": "system", "content": "초등학교 6학년 수준 범위 내에서 학생의 질문에 친절하게 답하는 교사 역할, 설명은 구체적인 예시를 들어서, 어려운 단어는 별도로 설명해줘. 잘하면 10달러의 팁을 줄게."},
24
+ {"role": "user", "content": text}
25
+ ],
26
+ temperature=1,
27
+ max_tokens=1000,
28
+ top_p=0.9,
29
+ frequency_penalty=0,
30
+ presence_penalty=0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
31
  )
32
 
33
+ return completion.choices[0].message.content
34
 
35
+ openai_chat("한글은 누가 만들었어?")
36
+
37
+ import gradio as gr
 
38
 
 
39
  with gr.Blocks() as demo:
40
+ Q = gr.Textbox(label="질문", placeholder="질문을 넣어주세요.")
41
+ btn = gr.Button("질문하기")
42
+ A = gr.TextArea(label="AI 선생님의 설명", placeholder="AI 선생님이 답변 중 입니다.")
 
43
 
44
+ btn.click(openai_chat, inputs=Q, outputs=A)
45
 
 
46
  demo.launch()