kijeoung commited on
Commit
7c5fedb
Β·
verified Β·
1 Parent(s): 7a08b78

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +31 -11
app.py CHANGED
@@ -2,19 +2,24 @@ import gradio as gr
2
  import os
3
  import openai
4
 
5
- # OpenAI API ν‚€ μ„€μ •
6
  openai.api_key = os.getenv("OPENAI_API_KEY")
7
 
8
  def translate_code_to_korean(code):
9
  """
10
- μž…λ ₯받은 μ˜μ–΄ μ½”λ“œλ₯Ό μžμ—°μŠ€λŸ½κ³  λ§€λ„λŸ¬μš΄ ν•œκ΅­μ–΄λ‘œ λ²ˆμ—­ν•©λ‹ˆλ‹€.
11
  """
12
  system_message = (
13
- "당신은 ν”„λ‘œκ·Έλž˜λ° κ΄€λ ¨ μ˜μ–΄ ν…μŠ€νŠΈλ₯Ό ν•œκ΅­μ–΄λ‘œ λ²ˆμ—­ν•˜λŠ” AI μ–Έμ–΄ λͺ¨λΈμž…λ‹ˆλ‹€. "
14
- "λ²ˆμ—­ μ‹œ μ •ν™•ν•œ 기술적 의미λ₯Ό μœ μ§€ν•˜λ©΄μ„œ μžμ—°μŠ€λŸ¬μš΄ ν‘œν˜„μ„ μ‚¬μš©ν•˜μ„Έμš”."
 
 
 
 
 
15
  )
16
  try:
17
- # OpenAI API 호좜
18
  response = openai.ChatCompletion.create(
19
  model="gpt-4o-mini",
20
  messages=[
@@ -27,19 +32,34 @@ def translate_code_to_korean(code):
27
  )
28
  return response.choices[0].message['content']
29
  except Exception as e:
30
- return f"λ¬Έμ œκ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€: {str(e)}"
31
 
32
- # Gradio μΈν„°νŽ˜μ΄μŠ€ ꡬ성
33
  def interface():
34
  with gr.Blocks() as app:
35
- gr.Markdown("# μ½”λ“œ λ²ˆμ—­κΈ°\nμ˜μ–΄λ‘œ μž‘μ„±λœ μ½”λ“œλ₯Ό μž…λ ₯ν•˜λ©΄ ν•œκ΅­μ–΄λ‘œ λ²ˆμ—­λœ κ²°κ³Όλ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€.")
 
 
 
36
 
37
  with gr.Row():
38
- input_code = gr.Textbox(label="μ˜μ–΄ μ½”λ“œ μž…λ ₯", lines=10, placeholder="여기에 μ½”λ“œλ₯Ό μž…λ ₯ν•˜μ„Έμš”.")
39
- output_translation = gr.Textbox(label="λ²ˆμ—­ κ²°κ³Ό", lines=10, interactive=False)
 
 
 
 
 
 
 
 
40
 
41
  translate_button = gr.Button("λ²ˆμ—­ μ‹€ν–‰")
42
- translate_button.click(translate_code_to_korean, inputs=[input_code], outputs=[output_translation])
 
 
 
 
43
 
44
  return app
45
 
 
2
  import os
3
  import openai
4
 
5
+ # OpenAI API ν‚€λ₯Ό μ„€μ •ν•©λ‹ˆλ‹€.
6
  openai.api_key = os.getenv("OPENAI_API_KEY")
7
 
8
  def translate_code_to_korean(code):
9
  """
10
+ μž…λ ₯된 μ˜μ–΄ μ½”λ“œλ₯Ό μžμ—°μŠ€λŸ½κ³  μ •ν™•ν•œ ν•œκ΅­μ–΄λ‘œ λ²ˆμ—­ν•©λ‹ˆλ‹€.
11
  """
12
  system_message = (
13
+ "당신은 ν”„λ‘œκ·Έλž˜λ° κ΄€λ ¨ μ˜μ–΄ ν…μŠ€νŠΈλ₯Ό ν•œκ΅­μ–΄λ‘œ λ²ˆμ—­ν•˜λŠ” AIμž…λ‹ˆλ‹€. "
14
+ "λ²ˆμ—­μ€ λ¬Έλ²•μ μœΌλ‘œ μ •ν™•ν•˜κ³  μžμ—°μŠ€λŸ¬μš΄ 흐름을 μš°μ„ μœΌλ‘œ ν•˜λ©°, 기술적 의미λ₯Ό λͺ…ν™•ν•˜κ²Œ 전달해야 ν•©λ‹ˆλ‹€. "
15
+ "- ν”Όλ™ν˜• λŒ€μ‹  λŠ₯λ™ν˜• λ¬Έμž₯을 μ‚¬μš©ν•©λ‹ˆλ‹€. \n"
16
+ "- λŒ€λͺ…사λ₯Ό μ΅œμ†Œν™”ν•˜κ³ , 동사와 ν˜•μš©μ‚¬λ₯Ό μš°μ„ μ μœΌλ‘œ μ‚¬μš©ν•©λ‹ˆλ‹€. \n"
17
+ "- ν˜„μž¬μ§„ν–‰ν˜•λ³΄λ‹€ λ‹¨μˆœ ν˜„μž¬λ‚˜ μ™„λ£Œν˜•μ„ μ‚¬μš©ν•©λ‹ˆλ‹€. \n"
18
+ "- μ£Όμ œμ™€ 상황에 λ§žλŠ” μ–΄νœ˜λ₯Ό μ„ νƒν•˜λ©°, 직역과 μ˜μ—­ μ‚¬μ΄μ˜ κ· ν˜•μ„ μœ μ§€ν•©λ‹ˆλ‹€. \n"
19
+ "- λ²ˆμ—­λœ ν…μŠ€νŠΈλŠ” AIκ°€ μž‘μ„±ν•œ λŠλ‚Œμ„ μ£Όμ§€ μ•Šμ•„μ•Ό ν•©λ‹ˆλ‹€."
20
  )
21
  try:
22
+ # OpenAI APIλ₯Ό ν˜ΈμΆœν•©λ‹ˆλ‹€.
23
  response = openai.ChatCompletion.create(
24
  model="gpt-4o-mini",
25
  messages=[
 
32
  )
33
  return response.choices[0].message['content']
34
  except Exception as e:
35
+ return f"였λ₯˜κ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€: {str(e)}"
36
 
37
+ # Gradio μΈν„°νŽ˜μ΄μŠ€λ₯Ό κ΅¬μ„±ν•©λ‹ˆλ‹€.
38
  def interface():
39
  with gr.Blocks() as app:
40
+ gr.Markdown("""
41
+ # μ½”λ“œ λ²ˆμ—­κΈ°
42
+ μ˜μ–΄λ‘œ μž‘μ„±λœ μ½”λ“œλ₯Ό μž…λ ₯ν•˜λ©΄ μžμ—°μŠ€λŸ½κ³  μ •ν™•ν•œ ν•œκ΅­μ–΄λ‘œ λ²ˆμ—­ν•΄ λ“œλ¦½λ‹ˆλ‹€.
43
+ """)
44
 
45
  with gr.Row():
46
+ input_code = gr.Textbox(
47
+ label="λ²ˆμ—­ν•  μ˜μ–΄ μ½”λ“œ",
48
+ lines=10,
49
+ placeholder="여기에 μ½”λ“œλ₯Ό μž…λ ₯ν•˜μ„Έμš”."
50
+ )
51
+ output_translation = gr.Textbox(
52
+ label="λ²ˆμ—­ κ²°κ³Ό",
53
+ lines=10,
54
+ interactive=False
55
+ )
56
 
57
  translate_button = gr.Button("λ²ˆμ—­ μ‹€ν–‰")
58
+ translate_button.click(
59
+ translate_code_to_korean,
60
+ inputs=[input_code],
61
+ outputs=[output_translation]
62
+ )
63
 
64
  return app
65