Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -188,18 +188,16 @@ def respond_gemini_qna(
|
|
188 |
system_message: str,
|
189 |
max_tokens: int,
|
190 |
temperature: float,
|
191 |
-
top_p: float, # 이 값은
|
192 |
model_id: str
|
193 |
):
|
194 |
"""
|
195 |
Gemini 모델(예: gemini-2.0-flash, gemini-2.0-flash-lite-preview-02-05)을 이용해
|
196 |
질문(question)에 대한 답변을 반환하는 함수.
|
197 |
-
|
198 |
-
Google의 genai 라이브러리(google-generativeai)를 사용합니다.
|
199 |
"""
|
200 |
try:
|
201 |
-
|
202 |
-
from google.genai import types
|
203 |
except ModuleNotFoundError:
|
204 |
return ("오류가 발생했습니다: 'google-generativeai' 모듈을 찾을 수 없습니다. "
|
205 |
"해결 방법: 'pip install google-generativeai'를 실행하여 설치해주세요.")
|
@@ -208,18 +206,21 @@ def respond_gemini_qna(
|
|
208 |
if not gemini_api_key:
|
209 |
return "Gemini API 토큰이 필요합니다."
|
210 |
|
211 |
-
|
|
|
|
|
212 |
prompt = f"{system_message}\n\n{question}"
|
|
|
213 |
try:
|
214 |
-
response =
|
215 |
model=model_id,
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
)
|
221 |
)
|
222 |
-
|
|
|
223 |
except Exception as e:
|
224 |
return f"오류가 발생했습니다: {str(e)}"
|
225 |
|
|
|
188 |
system_message: str,
|
189 |
max_tokens: int,
|
190 |
temperature: float,
|
191 |
+
top_p: float, # 이 값은 설정에 포함됩니다.
|
192 |
model_id: str
|
193 |
):
|
194 |
"""
|
195 |
Gemini 모델(예: gemini-2.0-flash, gemini-2.0-flash-lite-preview-02-05)을 이용해
|
196 |
질문(question)에 대한 답변을 반환하는 함수.
|
197 |
+
Google의 generativeai(palm) 라이브러리를 사용합니다.
|
|
|
198 |
"""
|
199 |
try:
|
200 |
+
import google.generativeai as palm
|
|
|
201 |
except ModuleNotFoundError:
|
202 |
return ("오류가 발생했습니다: 'google-generativeai' 모듈을 찾을 수 없습니다. "
|
203 |
"해결 방법: 'pip install google-generativeai'를 실행하여 설치해주세요.")
|
|
|
206 |
if not gemini_api_key:
|
207 |
return "Gemini API 토큰이 필요합니다."
|
208 |
|
209 |
+
# API 키 설정 (최신 라이브러리에서는 configure 함수를 사용합니다)
|
210 |
+
palm.configure(api_key=gemini_api_key)
|
211 |
+
|
212 |
prompt = f"{system_message}\n\n{question}"
|
213 |
+
|
214 |
try:
|
215 |
+
response = palm.generate_text(
|
216 |
model=model_id,
|
217 |
+
prompt=prompt,
|
218 |
+
max_output_tokens=max_tokens,
|
219 |
+
temperature=temperature,
|
220 |
+
top_p=top_p,
|
|
|
221 |
)
|
222 |
+
# 응답 객체의 result 속성에 생성된 텍스트가 담겨 있습니다.
|
223 |
+
return response.result
|
224 |
except Exception as e:
|
225 |
return f"오류가 발생했습니다: {str(e)}"
|
226 |
|