Spaces:
Sleeping
Sleeping
File size: 7,448 Bytes
f6ace39 671a344 f9fb742 671a344 f9fb742 671a344 f6ace39 671a344 f6ace39 671a344 f6ace39 671a344 f6ace39 9b556f8 671a344 f6ace39 671a344 f6ace39 9b556f8 671a344 f6ace39 f9fb742 671a344 f6ace39 671a344 |
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 |
# -*- coding: utf-8 -*-
import gradio as gr
import requests
import json
import os
api_key_primary_val = os.getenv('api_key_primary_val')
api_key = os.getenv('api_key')
def request_hyper(message):
class CompletionExecutor:
def __init__(self, host, api_key, api_key_primary_val, request_id):
self._host = host
self._api_key = api_key
self._api_key_primary_val = api_key_primary_val
self._request_id = request_id
def execute(self, completion_request):
headers = {
'X-NCP-CLOVASTUDIO-API-KEY': self._api_key,
'X-NCP-APIGW-API-KEY': self._api_key_primary_val,
'X-NCP-CLOVASTUDIO-REQUEST-ID': self._request_id,
'Content-Type': 'application/json; charset=utf-8',
'Accept': 'text/event-stream'
}
with requests.post(self._host + '/testapp/v1/chat-completions/HCX-003',
headers=headers, json=completion_request, stream=False) as r:
stop_reason = ""
messages = []
for line in r.iter_lines():
if line:
raw_data = line.decode("utf-8")
if raw_data.startswith('data:'):
json_part = raw_data.split('data:', 1)[1].strip()
decoded_text = json.loads(json_part)
message_content = decoded_text["message"]["content"]
stop_reason = decoded_text["stopReason"]
print(f"λ©μμ§:{message_content}")
messages.append(message_content)
# yield "AI : " + message_content
# print(f"λ©μμ§:{message},{stop_reason}λ")
if stop_reason == "stop_before":
print("stop_before μΆλ ₯. λ°λ³΅ μ’
λ£")
print(f"messages:{messages}")
return messages
# return line.decode("utf-8")
completion_executor = CompletionExecutor(
host='https://clovastudio.stream.ntruss.com',
api_key=api_key,
api_key_primary_val=api_key_primary_val,
request_id='73f8978312ed4ca0bbef6fa7f86edfc3'
)
preset_text = [{"role":"system","content":"μ§λ¬Έμ λν΄ μλ λΈλ£Έμ μ§λ¬Έ λΆλ₯λ₯Ό μ°Έκ³ νμ¬ μ¬μ©μμ μ§λ¬Έμ΄ λͺ λ¨κ³μ ν΄λΉνλμ§ μλ €μ€.\n(1) κΈ°μ΅ : κ³Όμ , νν, ꡬ쑰 νΉμ μ₯λ©΄ λ±μ μ¬μ€μ μΈ μ 보λ€μ μΈμνκ³ νμνλ λ₯λ ₯μ λ§νλ€. νΉμ μ΄μ μ μ νκ±°λ λ°°μ λ λ΄μ©λ€μ μ¬μ€μ΄λ, μ©μ΄, κΈ°λ³Έμ κ°λ
λ€μ ν
μ€νΈλ‘λΆν° κΈ°μ΅ν΄λ΄λ κ²μ μλ―Ένλ€.- μ£ΌμΈκ³΅μ λꡬμΈκ°?- λ
Ήμ€λ μ΄λμ κ°κ³ μλκ°?- μ΄μΌκΈ°λ₯Ό μ½μΌλ©΄μ μλ‘κ² μ ν λ¨μ΄λ€μ μ¨λ³΄μμ€. \n(2) μ΄ν΄ : ν΄μνκΈ°, μΆλ‘ νκΈ° λ±μ μμ¬μν΅λκ³ μλ κ²μ΄ 무μμΈμ§ μκ³ μλ μ λμ΄λ©°, λ€λ₯Έ μλ£μ κ·Έκ²μ λ°λμ κ΄λ ¨μν€μ§ μμλ μμ¬μν΅ λκ³ μλ μμ΄λμ΄μ μλ£λ₯Ό νμ©ν μ μλ μ λμ μ΄ν΄λ₯λ ₯ λλ κ°μ§λ₯λ ₯μ λ§νλ€. μ¬κΈ°μλ λΉλ¬Έμμ μΈ μ§μ μ μμ λ μμ§, μμ΄λ¬λ κ³Όμ₯ λ±μ μ΄ν΄νλ λ₯λ ₯κ³Ό μ°μλλ κ²½ν₯μ νμμ μμΈνλ μΆλ‘ νλ λ₯λ ₯μ΄ ν¬ν¨λλ€.- μ μ°νΌ μμΉ΄λ°λ―Έλ ν€ν
μ μλμ κ³ μ©νλμ?- μ ν λλ μ°νΌ μμΉ΄λ°λ―Έμ μ νμ μλμ?- λμ μλ²μ§λ μ λμκ² νλ₯Ό λλμ? \n(3)μ μ© : νΉμ ν ꡬμ μ μΈ μν© μμμμ μΆμκ°λ
μ¬μ©νκΈ°, μΆμκ°λ
μ μΌλ°μ μΈ μ16μ΄λμ΄, μ μ°¨μ μ리 λ±μ λ£κ±°λ μ½μ΄μ μ»μ μ 보λ₯Ό μλ‘μ΄ μν©μ μ μ©νλ κ²μΌλ‘ μ΅λν μ 보μ μ§μμ μ΄μ©νμ¬ λ¬Έμ λ₯Ό ν΄κ²°νλ κ²μ μλ―Ένλ€.- λ
Ήμ€μ ν¬λ¦¬μ€μ μ νν΅ν λνλ₯Ό μ¨λ³΄μΈμ.- λμ μ
μ₯μμ λΆλͺ¨λκ» μͺ½μ§λ₯Ό μ¨λ³΄μΈμ.- μ§κΈκΉμ§ ν€ν
κ³Ό λΉμ·ν μ μλμ λ§λ μ μ΄ μλ€λ©΄ μ΄λ€ μ μλμΈμ§ λ§ν΄λ³΄μΈμ. \n(4)λΆμ : ννλ λ΄μ©λ€κ°μ κ΄κ³κ° ꡬ체μ μ΄κ³ λͺ
μμ μ΄λλ‘ μμ¬μν΅μ ꡬμ±μμλ λΆλΆμΌλ‘ λΆν΄νκ±°λ λΆλΆμ λ€μ μ 체μ κ΄λ ¨μ§λ λ₯λ ₯μΌλ‘ λΆμνκΈ°, λ¨μννκΈ°, μμ½νκΈ°, λΆλ₯νκΈ°, λΉκ΅νκΈ°, λμ‘°νκΈ°, λ±κΈμΌλ‘ λλκΈ°, ꡬλ³νκΈ°λ₯Ό μλ‘ λ€ μ μλ€. - κ΅μ₯μ μλκ³Ό ν€ν
μ μλμ μ±κ²©μ λΉκ΅/λμ‘° ν΄λ³΄μΈμ.- μμ€μ μ΄μΌκΈ°λ₯Ό νμ€μΈκ³μ λΉκ΅ν΄λ³΄κ³ μ€μ λ‘ λ¬΄μ¨ μΌμ΄ μΌμ΄λ μ§ λ§ν΄λ³΄μμ€. \n(5) μ’
ν©: μ 체λ₯Ό μ΄λ£¨κΈ° μν΄ μμλ λΆλΆλ€μ ν¨κ» μ‘°ν©νκ±°λ κ²°ν©νμ¬ μλ‘μ΄ λ°©λ²μΌλ‘ λ΄μ©μ ꡬμ±νλ κ²μΌλ‘ μλ¬ΈνκΈ°, ν΄κ²°νκΈ°, μ§λ΄κΈ°, κ³ μν΄λ΄κΈ°, 곡μννκΈ°, μ κ΅νκ² νκΈ°, κ°μνκΈ°, μ μνκΈ°λ₯Ό μλ‘ λ€ μ μλ€. - λμ΄ κ·Ήλ¨μ μ νμ νμ§ μκ³ ν€ν
μ μλλ νκ΅λ₯Ό λ λμ§ μμλ€κ³ κ°μ νκ³ μ΄μΌκΈ°λ₯Ό μ¨λ³΄μμ€.- λ§μΌ ν€ν
μ μλμ΄ κ΅μ₯μ΄ λμλ€κ³ κ°μ νκ³ μ΄μΌκΈ°μ λ΄μ©μ μ κ°ν΄λ³΄μμ€. (6) νκ° : νΉμ ν ν μΈνΈμ κΈ°μ€μ λ°λΌ μ μ
κ³Ό μλΉλ₯Ό νλ¨νκ³ μ΄μ λ₯Ό λλ κ²μΌλ‘ μ£Όμ΄μ§ λͺ©μ μ΄λ μλμ λΉμΆμ΄ μλ£λ λ°©λ²μ΄ κ°μ§κ³ μλ κ°μΉμ κ΄νμ¬ νλ¨νλ μΌμ΄λ€. μ΄μ λν μλ‘λ νλ¨νκΈ°, μΉνΈνκΈ°, μ λΉννκΈ°, λ±κΈ 맀기기, νκ°νκΈ°, μ§μ§νκΈ°, μ¦λͺ
νκΈ°, μΆμ²νκΈ°, μ°μ μμ 맀기기μ κ°μ κ²μ΄ μλ€.- μΉκ΅¬λ€κ³Όμ λΉλ°μ νλ‘ν μΉ΄λ©λ‘ μ νλμ μ³μλκ°? κ·Έλ λ€λ νΉμ κ·Έλ μ§ μλ€λ μ견μ λν μμ μ μ£Όμ₯μ μΉνΈνμμ€.- λλ κ΅μ₯μ μλμ 체λ²μ μ λΉνλ μ μλκ°? 체λ²μ λν μμ μ μ견μ μ μνκ³ κ·Έμ λν μ΄μ λ₯Ό ν¨κ» λ§νμμ€."},{"role":"user","content":"κ°κ΅¬λ¦¬μ μμμ§λ μ΄λμΌκΉ?"},{"role":"assistant","content":"κ°κ΅¬λ¦¬μ μμμ§μ λν μ§λ¬Έμ κ°κ΅¬λ¦¬μ μλ¬Όνμ νΉμ±κ³Ό κ΄λ ¨λ κΈ°λ³Έμ μΈ μ§μμ 묻λ κ²μΌλ‘ 1λ¨κ³μ ν΄λΉν©λλ€.\n"},{"role":"user","content":"κ³°μ μμμ§ μΆμμ νκ²½λ¬Έμ λ μ΄λ€ κ΄λ ¨μ΄ μμκΉ?"},{"role":"assistant","content":"ν΄λΉ μ§λ¬Έμ κ³°μ μμμ§ μΆμλΌλ νμμ ν΅ν΄ μΈκ°μ νκ²½ νκ΄΄μ κ·Έλ‘ μΈν μνκ³μ μν₯μ μκ°ν΄ λ³΄κ² νλ κ²μΌλ‘ 3λ¨κ³μ ν΄λΉν©λλ€. \n"},{"role":"user","content":"κ°κ΅¬λ¦¬μ λ¨Ήμ΄λ λλ‘±λ½μ λ¨Ήμ΄μ λΉμ·νλ° μ κ·Έλ΄κΉ?"},{"role":"assistant","content":"μ΄ μ§λ¬Έμ κ°κ΅¬λ¦¬μ λλ‘±λ½μ λ¨Ήμ΄κ° λΉμ·ν μ΄μ λ₯Ό μ μΆνκ² ν¨μΌλ‘μ¨ μμλ₯μ μνμ λν μ΄ν΄λ₯Ό λμ΄κ³ , μ΄λ₯Ό ν΅ν΄ μμ°κ³μ λ¨Ήμ΄ μ¬μ¬κ³Ό μ°κ΄ μ§μ΄ μκ°νλλ‘ νλ€λ μ μμ 4λ¨κ³μΈ λΆμμ ν΄λΉν©λλ€."},{"role":"user","content":message}]
request_data = {
'messages': preset_text,
'topP': 0.8,
'topK': 0,
'maxTokens': 3000,
'temperature': 0.5,
'repeatPenalty': 5.0,
'stopBefore': [],
'includeAiFilters': True
}
print(f"ν리μ
ν
μ€νΈ: {preset_text}")
completion_result = completion_executor.execute(request_data)
return completion_result |