▲GN⁺ 2024-12-09 | parent | ★ favorite | on: Ollama를 활용한 구조화된 출력(ollama.com)Hacker News 의견 llama.cpp의 gbnf 기능을 통해 더 강력한 출력 제약을 설정할 수 있음 링크: GitHub - llama.cpp grammars 정규 프롬프트를 구조화하여 csv 데이터로 변환할 때 불필요한 텍스트를 제거할 수 있어 유용함 gemma2:2b를 사용하여 텍스트를 입력하면 구조화된 JSON 형식의 출력물을 얻을 수 있음 예시 입력: "You have spent 190 at Fresh Mart. Current balance: 5098" 예시 출력: {"amount": 190, "balance": 5098, "category": "Shopping", "place": "Fresh Mart"} LLM의 출력 품질에 제약이 어떻게 영향을 미치는지 궁금해하는 의견이 있음 경우에 따라 Markdown이나 일반 텍스트로 파싱하는 것이 더 나은 품질을 제공할 수 있음 지원되는 모델과 함께 사용할 수 있는지에 대한 질문이 있음 개인 하드웨어에서 1b-3b 모델만 안정적으로 실행할 수 있음 llama.cpp와 ollama가 llama의 구조화된 출력 기능을 활용하는지, 아니면 다른 방식으로 구현된 것인지에 대한 궁금증이 있음 Meta의 Llama 페이지에서 모델이 구조화된 출력을 본래 지원한다고 언급됨 outlines와 비교하여 어떤 부가가치가 있는지에 대한 질문이 있음 링크: Taming LLMs - Structured Output oobabooga를 계속 사용하는 이유는 exlv2 지원으로 듀얼 3090s에서 더 효율적인 추론을 제공하기 때문임 curl 예제가 먼저 나오는 것이 좋음 Pydantic을 좋아하지만, 스키마를 직접 코딩하는 것이 프로토타입을 Go로 옮기기 더 쉬움 LLM에 구조화된 입력을 제공하는 최적의 방법에 대한 질문이 있음 예: 100개의 문장을 입력하여 각각을 다른 방식으로 분류하는 것 구조화된 데이터를 얻는 것은 쉽지만, 줄 번호를 접두사로 사용하는 방식이 어색함
Hacker News 의견
llama.cpp의 gbnf 기능을 통해 더 강력한 출력 제약을 설정할 수 있음
정규 프롬프트를 구조화하여 csv 데이터로 변환할 때 불필요한 텍스트를 제거할 수 있어 유용함
gemma2:2b를 사용하여 텍스트를 입력하면 구조화된 JSON 형식의 출력물을 얻을 수 있음
{"amount": 190, "balance": 5098, "category": "Shopping", "place": "Fresh Mart"}LLM의 출력 품질에 제약이 어떻게 영향을 미치는지 궁금해하는 의견이 있음
지원되는 모델과 함께 사용할 수 있는지에 대한 질문이 있음
llama.cpp와 ollama가 llama의 구조화된 출력 기능을 활용하는지, 아니면 다른 방식으로 구현된 것인지에 대한 궁금증이 있음
outlines와 비교하여 어떤 부가가치가 있는지에 대한 질문이 있음oobabooga를 계속 사용하는 이유는 exlv2 지원으로 듀얼 3090s에서 더 효율적인 추론을 제공하기 때문임
curl 예제가 먼저 나오는 것이 좋음
LLM에 구조화된 입력을 제공하는 최적의 방법에 대한 질문이 있음