nexusai Posted November 14, 2023 공유하기 Posted November 14, 2023 안녕하세요. hcx-python 패키지를 만드실 계획이 있으신지 궁금해하는 한편 사내용 패키지를 만들어 테스트앱을 사용중입니다. 현재 패키징을 진행하려는 기능은 채팅, 채팅 스트림, 임베딩 이렇게 세 개인데요. api key 하나만으로 모든 기능을 사용할 수 있는 openai 와 다르게 HCX-002 모델은 각 서비스 타입별뿐만 아니라 각 모델별로 독립된 앱을 먼저 생성하고 clovastudio_api_key, apigw_api_key, api_url 을 독립적으로 관리해야 하는 특성 때문에 추상화에 앞서 고민이 많습니다. 튜닝을 통해 여러 실험도 진행중이다보니 결국 앱url이 무한히 늘어날 예정인 것이죠. (결론적으로는 그 중 살아남은 1-2개만 상용기에 올리게 되겠지만요) 혹시 이와 관련하여.. 엔드포인트의 나이스한 관리방법이나 패키지 제작 팁 등이 있으시다면 가감없이 공유 주시면 좋겠습니다. 저는 아래와 같은 방식으로 사용할 패키지를 만들고 있습니다. from nexusai-hcx import HCX client = HCX( # defaults to os.environ.get("CLOVASTUDIO_API_KEY") # defaults to os.environ.get("APIGW_API_KEY") # defaults to os.environ.get("API_URL") clovastudio_api_key = "My API Key", apigw_api_key = "My API Key", api_url = "My API Url", ) #chat chat_completion = client.chat( messages=[ { "role": "system", "content": "당신은 법률 전문가이며 일반인을 대상으로 법률 상담을 진행하고 있습니다. 사용자의 법률 질문에 대답하세요." }, { "role": "user", "content": "안녕하십니까..." } ] ) #chat streaming stream = client.chat( messages=[ { "role": "system", "content": "당신은 법률 전문가이며 일반인을 대상으로 법률 상담을 진행하고 있습니다. 사용자의 법률 질문에 대답하세요." }, { "role": "user", "content": "안녕하십니까..." } ], stream=True, ) for part in stream: print(part or "") #embedding def get_embedding(text, model="clir-emb-dolphin"): text = text.replace("\n", " ") return client.embeddings.create(input = [text], model=model)['embedding'] df['hcx_embedding'] = df.combined.apply(lambda x: get_embedding(x, model='clir-emb-dolphin')) 링크 복사 다른 사이트에 공유하기 More sharing options...
CLOVA Studio 운영자 Posted November 15, 2023 공유하기 Posted November 15, 2023 안녕하세요, 클로바 스튜디오 담당입니다. @nexusai님, 좋은 의견 주셔서 감사합니다. 현재는 각각 독립적으로 이용하는 방법밖에 없지만, 말씀 주신 내용을 포함해서 내부적으로 검토해보겠습니다. 감사합니다. 1 링크 복사 다른 사이트에 공유하기 More sharing options...
Recommended Posts
게시글 및 댓글을 작성하려면 로그인 해주세요.
로그인