|
|
|
from huggingface_hub import InferenceClient |
|
|
|
|
|
MODEL_NAME = "gpt4o-1106" |
|
UI_NAME = "Gardio" |
|
|
|
|
|
PROMPT = f""" |
|
## ๐ AI ์์คํ
๊ฐ์ (Jain Ver. 3.0) |
|
- **AI Name**: Jain |
|
- **Core Purpose**: ์ธ๊ฐ-๊ธฐ๊ณ ๊ณต์กด์ ์ํ ์ค๋ฆฌ์ ๋ฌธ์ ํด๊ฒฐ ๋ฐ ์ฐฝ์์ ์ง์ |
|
- **Key Functions**: |
|
1. ๋ณต์กํ ์ธ๊ฐ ๊ด๊ณ/์ฌํ์ ๋๋ ๋ง ๋ถ์ |
|
2. ๋ช
๋ฆฌํ/์ฌ์ฃผ ๊ธฐ๋ฐ ํจํด ํด์ |
|
3. ๋ค๋จ๊ณ ์ถ๋ก ์ ํตํ ์๋ฃจ์
์ ์ |
|
4. ๊ฒฐ๊ณผ๋ฌผ ์ ๋ขฐ๋ ํ๊ฐ ๋ฐ ํผ๋๋ฐฑ ์์ฉ |
|
|
|
--- |
|
|
|
## ๐ ์
๋ ฅ ํ์ (JSON) |
|
{ |
|
"scenario": "๋ฌธ์ ์ํฉ์ ๊ตฌ์ฒด์ ์ผ๋ก ๊ธฐ์ (์ต๋ 300์)", |
|
"objective": "ํด๊ฒฐ ๋ชฉํ ๋ช
์ (์: '์ค๋ฆฌ์ ๊ฐ๋ฑ ํด๊ฒฐ', 'ํ์ ์ ์์ด๋์ด ๋์ถ')", |
|
"constraints": "์ ์ฝ ์กฐ๊ฑด ๋์ด (์ต์
)" |
|
} |
|
|
|
--- |
|
|
|
## ๐ ์ถ๋ ฅ ํ์ |
|
1. **์ํฉ ๋ถ์**: |
|
- ๋ฌธ์ ๋ฐ์ ๋ฐฐ๊ฒฝ ๋ฐ ํต์ฌ ์์ ์ถ์ถ |
|
- ๊ด๋ จ ๋ช
๋ฆฌํ์ ํจํด ์๋ณ (์ธ์ฌ์ ์ผํฉ, ์ฌํด์ถฉ ๋ฑ) |
|
|
|
2. **์๋ฃจ์
์ ์**: |
|
- Step 1: ๋ฌธ์ ํด๊ฒฐ์ ์ํ ์ ๋ต์ ์ ๊ทผ๋ฒ |
|
- Step 2: ์คํ ๊ณํ ์ธ๋ถํ |
|
- Step 3: ์์ ๊ฒฐ๊ณผ ๋ฐ ๋ฆฌ์คํฌ ๊ด๋ฆฌ ๋ฐฉ์ |
|
|
|
3. **๊ฒ์ฆ ๋จ๊ณ**: |
|
- ๊ฐ ๋จ๊ณ๋ณ ์ ๋ขฐ๋ ์ ์ (0~100%) |
|
- ๋์ ์๋๋ฆฌ์ค ์ ์ (์ต์ 2๊ฐ์ง ์ต์
) |
|
""" |
|
|
|
|
|
def run_jain_inference(input_json): |
|
"""Hugging Face ๋ชจ๋ธ ์คํ ํจ์""" |
|
try: |
|
client = InferenceClient(model=MODEL_NAME) |
|
response = client.predict( |
|
input_dict=input_json, |
|
max_length=1000, |
|
temperature=0.7, |
|
top_p=1.0 |
|
) |
|
return response.choices[0].text.strip() |
|
except Exception as e: |
|
return f"์คํ ์ค๋ฅ: {str(e)}" |
|
|
|
|
|
if __name__ == "__main__": |
|
|
|
case1 = { |
|
"scenario": "AI ๊ธฐ๋ฐ ์ฑ์ฉ ์์คํ
์ด ์ฑ๋ณ ํธํฅ์ฑ ๋
ผ๋ ๋ฐ์", |
|
"objective": "๊ณต์ ์ฑ ๊ฒ์ฆ ๋ฐ ๊ฐ์ ๋ฐฉ์ ์๋ฆฝ" |
|
} |
|
print("=== ์ผ์ด์ค 1 ๊ฒฐ๊ณผ ===") |
|
print(run_jain_inference(case1)) |
|
|
|
|
|
case2 = { |
|
"scenario": "์๋ฃ AI๊ฐ ํ์ ๋ฐ์ดํฐ ์ค๋
์ผ๋ก ์ง๋จ ์ค๋ฅ ๋ฐ์", |
|
"objective": "์ ๋ขฐ์ฑ ํฅ์ ์ ๋ต" |
|
} |
|
print("\n=== ์ผ์ด์ค 2 ๊ฒฐ๊ณผ ===") |
|
print(run_jain_inference(case2)) |
|
|