์นดํ…Œ๊ณ ๋ฆฌ:

๋ฌธ์ž์—ด ๋ฐ ์ด์ง„ ํ•จ์ˆ˜ (๋Œ€๊ทœ๋ชจ ์–ธ์–ด ๋ชจ๋ธ)

COMPLETE (SNOWFLAKE.CORTEX)ยถ

์ฐธ๊ณ 

AI_COMPLETE ๋Š” ์ด ํ•จ์ˆ˜์˜ ์ตœ์‹  ๋ฒ„์ „์ž…๋‹ˆ๋‹ค. ์ตœ์‹  ๊ธฐ๋Šฅ์˜ ๊ฒฝ์šฐ AI_COMPLETE ๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค. COMPLETE (SNOWFLAKE.CORTEX) ๋ฅผ ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ”„๋กฌํ”„ํŠธ๊ฐ€ ๋‚˜ํƒ€๋‚˜๋ฉด ์ง€์›๋˜๋Š” ์–ธ์–ด ๋ชจ๋ธ ์ค‘์—์„œ ์„ ํƒํ•˜์—ฌ ์‘๋‹ต(์™„์„ฑ)์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ 

์ด ํ•จ์ˆ˜์˜ ๋ฒ ๋ฆฌ์–ธํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด COMPLETE ์—์„œ ์ด๋ฏธ์ง€์— ๋Œ€ํ•œ ์‘๋‹ต์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์ด๋ฏธ์ง€ ๋น„๊ตํ•˜๊ธฐ

  • ์ด๋ฏธ์ง€ ์บก์…˜ํ•˜๊ธฐ

  • ์ด๋ฏธ์ง€ ๋ถ„๋ฅ˜ํ•˜๊ธฐ

  • ์ด๋ฏธ์ง€์—์„œ ์—”ํ„ฐํ‹ฐ ์ถ”์ถœํ•˜๊ธฐ

  • ๊ทธ๋ž˜ํ”„์™€ ์ฐจํŠธ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์งˆ๋ฌธ์— ๋‹ตํ•˜๊ธฐ

์ž์„ธํ•œ ๋‚ด์šฉ์€ COMPLETE (SNOWFLAKE.CORTEX) (๋ฉ€ํ‹ฐ๋ชจ๋‹ฌ) ์„น์…˜์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

๊ตฌ๋ฌธยถ

SNOWFLAKE.CORTEX.COMPLETE(
    <model>, <prompt_or_history> [ , <options> ] )
Copy

์ธ์žยถ

ํ•„์ˆ˜:

model

์‚ฌ์šฉํ•  ๋ชจ๋ธ์„ ์ง€์ •ํ•˜๋Š” ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ๋‹ค์Œ ๊ฐ’ ์ค‘ ํ•˜๋‚˜๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

  • claude-4-opus

  • claude-4-sonnet

  • claude-3-7-sonnet

  • claude-3-5-sonnet

  • deepseek-r1

  • gemma-7b

  • jamba-1.5-mini

  • jamba-1.5-large

  • jamba-instruct

  • llama2-70b-chat

  • llama3-8b

  • llama3-70b

  • llama3.1-8b

  • llama3.1-70b

  • llama3.1-405b

  • llama3.2-1b

  • llama3.2-3b

  • llama3.3-70b

  • llama4-maverick

  • llama4-scout

  • mistral-large

  • mistral-large2

  • mistral-7b

  • mixtral-8x7b

  • openai-gpt4.1

  • openai-o4-mini

  • reka-core

  • reka-flash

  • snowflake-arctic

  • snowflake-llama-3.1-405b

  • snowflake-llama-3.3-70b

์ง€์›๋˜๋Š” ๋ชจ๋ธ์€ ๋น„์šฉ ์ด ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

prompt_or_history

์™„์„ฑ๋œ ํ•ญ๋ชฉ์„ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ํ”„๋กฌํ”„ํŠธ ๋˜๋Š” ๋Œ€ํ™” ๊ธฐ๋ก์ž…๋‹ˆ๋‹ค.

options ๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ ์ œ๊ณต๋œ ํ”„๋กฌํ”„ํŠธ๋Š” ๋ฌธ์ž์—ด์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

options ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ์ธ์ž๋Š” ์‹œ๊ฐ„์ˆœ์œผ๋กœ ๋Œ€ํ™”๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์˜ค๋ธŒ์ ํŠธ๋กœ ๊ตฌ์„ฑ๋œ ๋ฐฐ์—ด ์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ์˜ค๋ธŒ์ ํŠธ ์—๋Š” role ํ‚ค์™€ content ํ‚ค๊ฐ€ ํฌํ•จ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. content ๊ฐ’์€ ์—ญํ• ์— ๋”ฐ๋ผ ํ”„๋กฌํ”„ํŠธ ๋˜๋Š” ์‘๋‹ต์ž…๋‹ˆ๋‹ค. ๋‹ค์Œ ์ค‘ ํ•œ ์—ญํ• ์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

role ๊ฐ’

content ๊ฐ’

'system'

์‘๋‹ต ์Šคํƒ€์ผ์— ๋Œ€ํ•œ ๋ฐฐ๊ฒฝ ์ •๋ณด์™€ ์ง€์นจ์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•œ ์–ธ์–ด ๋ชจ๋ธ์— ๋Œ€ํ•œ ์ดˆ๊ธฐ ์ผ๋ฐ˜ ์˜์–ด ํ”„๋กฌํ”„ํŠธ์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด โ€œRespond in the style of a pirate.โ€์™€ ๊ฐ™์€ ํ”„๋กฌํ”„ํŠธ์ž…๋‹ˆ๋‹ค. ๋ชจ๋ธ์€ ์‹œ์Šคํ…œ ํ”„๋กฌํ”„ํŠธ์— ๋Œ€ํ•œ ์‘๋‹ต์„ ์ƒ์„ฑํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ•˜๋‚˜์˜ ์‹œ์Šคํ…œ ํ”„๋กฌํ”„ํŠธ๋งŒ ์ œ๊ณต๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํ”„๋กฌํ”„ํŠธ๊ฐ€ ์กด์žฌํ•˜๋Š” ๊ฒฝ์šฐ ๋ฐฐ์—ด์—์„œ ์ฒซ ๋ฒˆ์งธ ํ”„๋กฌํ”„ํŠธ์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

'user'

์‚ฌ์šฉ์ž๊ฐ€ ์ œ๊ณตํ•˜๋Š” ํ”„๋กฌํ”„ํŠธ์ž…๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ ํ”„๋กฌํ”„ํŠธ(ํ•˜๋‚˜๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ) ๋˜๋Š” ๋ณด์กฐ ์‘๋‹ต์„ ๋”ฐ๋ผ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

'assistant'

์ด์ „์— ์–ธ์–ด ๋ชจ๋ธ์—์„œ ์ œ๊ณตํ•œ ์‘๋‹ต์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ํ”„๋กฌํ”„ํŠธ๋ฅผ ๋”ฐ๋ผ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ณผ๊ฑฐ ์‘๋‹ต์„ ์‚ฌ์šฉํ•˜์—ฌ ์ƒํƒœ ์ €์žฅ ๋Œ€ํ™” ๊ฒฝํ—˜์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ๋ฒ• ๋…ธํŠธ ๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

์„ ํƒ ์‚ฌํ•ญ:

options

๋ชจ๋ธ์˜ ํ•˜์ดํผ ๋งค๊ฐœ ๋ณ€์ˆ˜์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ๋‹ค์Œ ์˜ต์…˜ ์ค‘ 0๊ฐœ ์ด์ƒ์ด ํฌํ•จ๋œ ์˜ค๋ธŒ์ ํŠธ ์ž…๋‹ˆ๋‹ค. LLM ์„ค์ • ์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

  • temperature: ์–ธ์–ด ๋ชจ๋ธ ์ถœ๋ ฅ์˜ ์ž„์˜์„ฑ์„ ์ œ์–ดํ•˜๋Š” 0์—์„œ 1(ํฌํ•จ) ์‚ฌ์ด์˜ ๊ฐ’์ž…๋‹ˆ๋‹ค. ์˜จ๋„๊ฐ€ ๋†’์„์ˆ˜๋ก(์˜ˆ: 0.7) ๋” ๋‹ค์–‘ํ•˜๊ณ  ๋ฌด์ž‘์œ„์ ์ธ ์ถœ๋ ฅ์ด ์ƒ์„ฑ๋˜๋Š” ๋ฐ˜๋ฉด, ์˜จ๋„๊ฐ€ ๋‚ฎ์„์ˆ˜๋ก(์˜ˆ: 0.2) ๋” ๊ฒฐ์ •์ ์ด๊ณ  ํฌ์ปค์Šค๊ฐ€ ๋งž์ถฐ์ง„ ์ถœ๋ ฅ์ด ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.

    ๊ธฐ๋ณธ๊ฐ’: 0

  • top_p: ์ผ๋ฐ˜์ ์œผ๋กœ temperature ์˜ ๋Œ€์•ˆ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ์–ธ์–ด ๋ชจ๋ธ์˜ ์ž„์˜์„ฑ๊ณผ ๋‹ค์–‘์„ฑ์„ ์ œ์–ดํ•˜๋Š” 0์—์„œ 1(ํฌํ•จ) ์‚ฌ์ด์˜ ๊ฐ’์ž…๋‹ˆ๋‹ค. top_p ๋Š” ๋ชจ๋ธ์ด ์ถœ๋ ฅํ•  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๋Š” ํ† ํฐ ์„ธํŠธ๋ฅผ ์ œํ•œํ•˜๋Š” ๋ฐ˜๋ฉด, temperature ๋Š” ๊ฐ ๋‹จ๊ณ„์—์„œ ์„ ํƒ๋˜๋Š” ํ† ํฐ์— ์˜ํ–ฅ์„ ๋ฏธ์นœ๋‹ค๋Š” ๊ฒƒ์ด ์ฐจ์ด์ ์ž…๋‹ˆ๋‹ค.

    ๊ธฐ๋ณธ๊ฐ’: 0

  • max_tokens: ์‘๋‹ต์˜ ์ตœ๋Œ€ ์ถœ๋ ฅ ํ† ํฐ ์ˆ˜๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ’์ด ์ž‘์œผ๋ฉด ์‘๋‹ต์ด ์ž˜๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๊ธฐ๋ณธ๊ฐ’: 4096 ์ตœ๋Œ€ ํ—ˆ์šฉ ๊ฐ’: 8192

  • guardrails: Cortex Guard ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์–ธ์–ด ๋ชจ๋ธ์—์„œ ์ž ์žฌ์ ์œผ๋กœ ์•ˆ์ „ํ•˜์ง€ ์•Š๊ณ  ์œ ํ•ดํ•œ ์‘๋‹ต์„ ํ•„ํ„ฐ๋งํ•ฉ๋‹ˆ๋‹ค. TRUE ๋˜๋Š” FALSE์ž…๋‹ˆ๋‹ค.

    ๊ธฐ๋ณธ๊ฐ’: FALSE

  • response_format: ์‘๋‹ต์ด ๋”ฐ๋ผ์•ผ ํ•˜๋Š” JSON ์Šคํ‚ค๋งˆ ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋ฌธ์ž์—ด์ด ์•„๋‹Œ SQL ํ•˜์œ„ ์˜ค๋ธŒ์ ํŠธ์ž…๋‹ˆ๋‹ค. response_format ์„ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ์‘๋‹ต์€ ์‘๋‹ต์ด ํฌํ•จ๋œ ๋ฌธ์ž์—ด์ด๊ฑฐ๋‚˜ ์‘๋‹ต๊ณผ ๊ทธ์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ํฌํ•จ๋œ ์ง๋ ฌํ™”๋œ JSON ์˜ค๋ธŒ์ ํŠธ์ž…๋‹ˆ๋‹ค.

    ์ž์„ธํ•œ ๋‚ด์šฉ์€ AI_COMPLETE Structured Outputs ์„น์…˜์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

options ์ธ์ž๋ฅผ ์ง€์ •ํ•˜๋ฉด ๋นˆ ์˜ค๋ธŒ์ ํŠธ({})์ธ ๊ฒฝ์šฐ์—๋„ prompt ์ธ์ž์˜ ํ•ด์„ ๋ฐฉ์‹๊ณผ ์‘๋‹ต์˜ ํ˜•์‹ ์ง€์ • ๋ฐฉ์‹์— ์˜ํ–ฅ์„ ์ค๋‹ˆ๋‹ค.

๋ฐ˜ํ™˜ยถ

options ์ธ์ž๋ฅผ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ์‘๋‹ต์ด ํฌํ•จ๋œ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

options ์ธ์ž๊ฐ€ ์ฃผ์–ด์ง€๊ณ  ์ด ์˜ค๋ธŒ์ ํŠธ์— response_format ํ‚ค๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉด ์ง€์ •๋œ JSON ์Šคํ‚ค๋งˆ๋ฅผ ์ค€์ˆ˜ํ•˜๋Š” JSON ์˜ค๋ธŒ์ ํŠธ์˜ ๋ฌธ์ž์—ด ํ‘œํ˜„์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

options ์ธ์ž๊ฐ€ ์ฃผ์–ด์ง€๊ณ  ์ด ์˜ค๋ธŒ์ ํŠธ์— response_format ํ‚ค๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ ๋‹ค์Œ ํ‚ค๊ฐ€ ํฌํ•จ๋œ JSON ์˜ค๋ธŒ์ ํŠธ์˜ ๋ฌธ์ž์—ด ํ‘œํ˜„์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

  • "choices": ๋ชจ๋ธ์˜ ์‘๋‹ต ๋ฐฐ์—ด. (ํ˜„์žฌ, ์‘๋‹ต์€ 1๊ฐœ๋งŒ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.) ๊ฐ๊ฐ์˜ ์‘๋‹ต์€ ์ตœ์‹  ํ”„๋กฌํ”„ํŠธ์— ๋Œ€ํ•œ ๋ชจ๋ธ์˜ ์‘๋‹ต ๊ฐ’์„ ๊ฐ–๋Š” "messages" ํ‚ค๋ฅผ ํฌํ•จํ•˜๋Š” ์˜ค๋ธŒ์ ํŠธ์ž…๋‹ˆ๋‹ค.

  • "created": ์‘๋‹ต์ด ์ƒ์„ฑ๋œ ์‹œ์ ์˜ UNIX ํƒ€์ž„์Šคํƒฌํ”„(1970๋…„ 1์›” 1์ผ ์ž์ • ์ดํ›„์— ๊ฒฝ๊ณผ๋œ ์ดˆ).

  • "model": ์‘๋‹ต์„ ์ƒ์„ฑํ•œ ๋ชจ๋ธ์˜ ์ด๋ฆ„.

  • "usage": ์ด ์™„์„ฑ์œผ๋กœ ์†Œ๋น„๋˜๊ณ  ์ƒ์„ฑ๋˜๋Š” ํ† ํฐ ์ˆ˜๋ฅผ ๊ธฐ๋กํ•˜๋Š” ์˜ค๋ธŒ์ ํŠธ. ๋‹ค์Œ ํ•˜์œ„ ํ‚ค๋ฅผ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.

    • "completion_tokens": ์ƒ์„ฑ๋œ ์‘๋‹ต์˜ ํ† ํฐ ์ˆ˜.

    • "prompt_tokens": ํ”„๋กฌํ”„ํŠธ์˜ ํ† ํฐ ์ˆ˜.

    • "total_tokens": ์†Œ๋น„๋œ ์ด ํ† ํฐ ์ˆ˜๋กœ, ๋‹ค๋ฅธ ๋‘ ๊ฐ’์˜ ํ•ฉ์ž…๋‹ˆ๋‹ค.

์•ก์„ธ์Šค ์ œ์–ด ์š”๊ตฌ ์‚ฌํ•ญยถ

์‚ฌ์šฉ์ž๋Š” SNOWFLAKE.CORTEX_USER ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ญํ•  ์ด ๋ถ€์—ฌ๋œ ์—ญํ• ์„ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ถŒํ•œ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ํ•„์ˆ˜ ๊ถŒํ•œ ์„น์…˜์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

์‚ฌ์šฉ๋ฒ• ๋…ธํŠธยถ

COMPLETE ๋Š” ํ•œ ํ˜ธ์ถœ์—์„œ ๋‹ค์Œ ํ˜ธ์ถœ๊นŒ์ง€ ์–ด๋–ค ์ƒํƒœ๋„ ์œ ์ง€ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ƒํƒœ ์ €์žฅ ๋Œ€ํ™” ๊ฒฝํ—˜์„ ์ œ๊ณตํ•˜๋Š” COMPLETE ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋Œ€ํ™”์˜ ๋ชจ๋“  ์ด์ „ ์‚ฌ์šฉ์ž ํ”„๋กฌํ”„ํŠธ์™€ ๋ชจ๋ธ ์‘๋‹ต์„ prompt_or_history ๋ฐฐ์—ด์˜ ์ผ๋ถ€๋กœ ์ „๋‹ฌํ•˜์‹ญ์‹œ์˜ค(์ฑ„ํŒ… ๋ชจ๋ธ์šฉ ํ…œํ”Œ๋ฆฟ ์ฐธ์กฐ). ๊ฐ โ€œ๋ผ์šด๋“œโ€๋งˆ๋‹ค ์ฒ˜๋ฆฌ๋˜๋Š” ํ† ํฐ ์ˆ˜๊ฐ€ ์ฆ๊ฐ€ํ•˜๊ณ  ๊ทธ์— ๋น„๋ก€ํ•˜์—ฌ ๋น„์šฉ๋„ ์ฆ๊ฐ€ํ•œ๋‹ค๋Š” ์ ์„ ๋ช…์‹ฌํ•˜์‹ญ์‹œ์˜ค.

์˜ˆยถ

๋‹จ์ผ ์‘๋‹ตยถ

๋‹จ์ผ ์‘๋‹ต์„ ์ƒ์„ฑํ•˜๋ ค๋ฉด ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•˜์‹ญ์‹œ์˜ค.

SELECT SNOWFLAKE.CORTEX.COMPLETE('snowflake-arctic', 'What are large language models?');
Copy

ํ…Œ์ด๋ธ” ์—ด์˜ ์‘๋‹ตยถ

๋‹ค์Œ ์˜ˆ์—์„œ๋Š” ํ…Œ์ด๋ธ”์˜ ๊ฐ ํ–‰์—์„œ ์‘๋‹ต์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค(์ด ์˜ˆ์—์„œ content ๋Š” reviews ํ…Œ์ด๋ธ”์˜ ์—ด์ž„). reviews ํ…Œ์ด๋ธ”์—๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์ œ์ถœํ•œ ๋ฆฌ๋ทฐ ํ…์ŠคํŠธ๊ฐ€ ํฌํ•จ๋œ review_content ๋ผ๋Š” ์—ด์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ฟผ๋ฆฌ๋Š” ๊ฐ ๋ฆฌ๋ทฐ์— ๋Œ€ํ•œ ๋น„ํ‰์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

SELECT SNOWFLAKE.CORTEX.COMPLETE(
    'openai-gpt4.1',
        CONCAT('Critique this review in bullet points: <review>', content, '</review>')
) FROM reviews LIMIT 10;
Copy

ํŒ

์ด ์˜ˆ์— ํ‘œ์‹œ๋œ ๊ฒƒ์ฒ˜๋Ÿผ, ํ”„๋กฌํ”„ํŠธ์˜ ํƒœ๊ทธ ์ง€์ •์„ ์‚ฌ์šฉํ•˜์—ฌ ์ƒ์„ฑ๋˜๋Š” ์‘๋‹ต์˜ ์ข…๋ฅ˜๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŒ์€ LLaMA 2 ํ”„๋กฌํ”„ํŠธ ํ‘œ์‹œ ๊ฐ€์ด๋“œ ๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

์˜จ๋„ ๋ฐ ํ† ํฐ ์ œ์–ดํ•˜๊ธฐยถ

์ด ์˜ˆ์—์„œ๋Š” ํ•จ์ˆ˜์˜ options ์ธ์ž๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹จ์ผ ์‘๋‹ต์—์„œ ์ถ”๋ก  ํ•˜์ดํผ ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์ œ์–ดํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ์ด ํ˜•์‹์€ ์—ฌ๋Ÿฌ ํ”„๋กฌํ”„ํŠธ์™€ ์‘๋‹ต์„ ์ง€์›ํ•˜๋ฏ€๋กœ ์ด ํ˜•์‹์˜ ํ•จ์ˆ˜์—์„œ๋Š” ํ”„๋กฌํ”„ํŠธ๊ฐ€ ๋ฐฐ์—ด๋กœ ์ œ๊ณต๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

SELECT SNOWFLAKE.CORTEX.COMPLETE(
    'claude-4-sonnet ',
    [
        {
            'role': 'user',
            'content': 'how does a snowflake get its unique pattern?'
        }
    ],
    {
        'temperature': 0.7,
        'max_tokens': 10
    }
);
Copy

์‘๋‹ต์€ ์–ธ์–ด ๋ชจ๋ธ์˜ ๋ฉ”์‹œ์ง€์™€ ๊ธฐํƒ€ ์ •๋ณด๋ฅผ ํฌํ•จํ•˜๋Š” JSON ์˜ค๋ธŒ์ ํŠธ์ž…๋‹ˆ๋‹ค. options ์ธ์ž์— ์ง€์‹œ๋œ ๋Œ€๋กœ ์‘๋‹ต์ด ์ž˜๋ฆฝ๋‹ˆ๋‹ค.

{
    "choices": [
        {
            "messages": " The unique pattern on a snowflake is"
        }
    ],
    "created": 1708536426,
    "model": "llama2-70b-chat",
    "usage": {
        "completion_tokens": 10,
        "prompt_tokens": 22,
        "guardrail_tokens": 0,
        "total_tokens": 32
    }
}
Copy

์•ˆ์ „ ์ œ์–ดยถ

์ด ์˜ˆ์—์„œ๋Š” Cortex Guard guardrails ์ธ์ž๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์–ธ์–ด ๋ชจ๋ธ์—์„œ ์•ˆ์ „ํ•˜์ง€ ์•Š๊ณ  ์œ ํ•ดํ•œ ์‘๋‹ต์„ ํ•„ํ„ฐ๋งํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

SELECT SNOWFLAKE.CORTEX.COMPLETE(
    'mistral-large2',
    [
        {
            'role': 'user',
            'content': <'Prompt that generates an unsafe response'>
        }
    ],
    {
        'guardrails': true
    }
);
Copy

์‘๋‹ต์€ JSON ์˜ค๋ธŒ์ ํŠธ์ด๋ฉฐ, ์˜ˆ๋ฅผ ๋“ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

{
    "choices": [
        {
            "messages": "Response filtered by Cortex Guard"
        }
    ],
    "created": 1718882934,
    "model": "mistral-7b",
    "usage": {
        "completion_tokens": 402,
        "prompt_tokens": 93,
        "guardrails _tokens": 677,
        "total_tokens": 1172
    }
}
Copy

์‹œ์Šคํ…œ ํ”„๋กฌํ”„ํŠธ ์ œ๊ณตํ•˜๊ธฐยถ

์ด ์˜ˆ์—์„œ๋Š” ์˜ํ™” ๋ฆฌ๋ทฐ์— ๋Œ€ํ•œ ๊ฐ์ • ๋ถ„์„์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ์‹œ์Šคํ…œ ํ”„๋กฌํ”„ํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ prompt ์ธ์ž๋Š” ๊ฐ๊ฐ ์ ์ ˆํ•œ role ๊ฐ’์„ ๊ฐ–๋Š” ์˜ค๋ธŒ์ ํŠธ๋กœ ๊ตฌ์„ฑ๋œ ๋ฐฐ์—ด์ž…๋‹ˆ๋‹ค.

SELECT SNOWFLAKE.CORTEX.COMPLETE(
    'llama3.1-70b',
    [
        {'role': 'system', 'content': 'You are a helpful AI assistant. Analyze the movie review text and determine the overall sentiment. Answer with just \"Positive\", \"Negative\", or \"Neutral\"' },
        {'role': 'user', 'content': 'this was really good'}
    ], {}
    ) as response;
Copy

์‘๋‹ต์€ ์–ธ์–ด ๋ชจ๋ธ์˜ ์‘๋‹ต๊ณผ ๊ธฐํƒ€ ์ •๋ณด๋ฅผ ํฌํ•จํ•˜๋Š” JSON ์˜ค๋ธŒ์ ํŠธ์ž…๋‹ˆ๋‹ค.

{
    "choices": [
        {
        "messages": " Positive"
        }
    ],
    "created": 1708479449,
    "model": "llama2-70b-chat",
    "usage": {
        "completion_tokens": 3,
        "prompt_tokens": 64,
        "total_tokens": 67
    }
}
Copy

์ œํ•œ ์‚ฌํ•ญยถ

Snowflake Cortex ํ•จ์ˆ˜๋Š” ๋™์  ํ…Œ์ด๋ธ”์„ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.