[official skill] Claude API๋ก LLM ์ ํ๋ฆฌ์ผ์ด์ ๊ตฌ์ถํ๊ธฐ
์ด ์คํฌ์ Claude API์ Agent SDK๋ฅผ ํ์ฉํ์ฌ LLM ๊ธฐ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ๋ ์ ์ฒด ๊ณผ์ ์ ์๋ดํ๋ ๋๊ตฌ์ ๋๋ค.
๐ ์ฐธ๊ณ : ์ด ๋ฌธ์๋ ๊ณต์ Claude Code ๋ฌธ์์ ์๋ฌธ + ๋ ํผ๋ฐ์ค์ ๋๋ค.
- ์๋ฌธ ๋งํฌ๋ฅผ ์ง์ ์ฌ์ฉํ์ ๋ ๋ฉ๋๋ค
- ์ด ํ์ผ์
.claude/skills/ํ์์ ๋ณต์ฌํ์ฌ ์คํฌ๋ก ๋ฑ๋กํ ์๋ ์์ต๋๋ค(2026.03.15 ๊ธฐ์ค)
Claude๋ก LLM ๊ธฐ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ๊ตฌ์ถํ๊ธฐ
์ด ์คํฌ์ Claude๋ฅผ ์ฌ์ฉํ์ฌ LLM ๊ธฐ๋ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ๋ ๋ฐ ๋์์ ์ค๋๋ค. ํ์์ ๋ฐ๋ผ ์ ํฉํ ์ํผ์ค๋ฅผ ์ ํํ๊ณ , ํ๋ก์ ํธ ์ธ์ด๋ฅผ ๊ฐ์งํ ๋ค์, ํด๋น ์ธ์ด๋ณ ๋ฌธ์๋ฅผ ์ฝ์ผ์ธ์.
๊ธฐ๋ณธ๊ฐ
์ฌ์ฉ์๊ฐ ๋ณ๋๋ก ์์ฒญํ์ง ์๋ ํ:
Claude ๋ชจ๋ธ ๋ฒ์ ์ Claude Opus 4.6์ ์ฌ์ฉํ์ธ์. ์ ํํ ๋ชจ๋ธ ๋ฌธ์์ด claude-opus-4-6์ผ๋ก ์ ๊ทผํ ์ ์์ต๋๋ค. ์กฐ๊ธ์ด๋ผ๋ ๋ณต์กํ ์์
์๋ ์ ์ํ ์ฌ๊ณ (thinking: {type: "adaptive"})๋ฅผ ๊ธฐ๋ณธ์ผ๋ก ์ฌ์ฉํ์ธ์. ๋ง์ง๋ง์ผ๋ก, ๊ธด ์
๋ ฅ, ๊ธด ์ถ๋ ฅ, ๋๋ ๋์ max_tokens๋ฅผ ํฌํจํ ์ ์๋ ๋ชจ๋ ์์ฒญ์๋ ์คํธ๋ฆฌ๋ฐ์ ๊ธฐ๋ณธ์ผ๋ก ์ฌ์ฉํ์ธ์ โ ์์ฒญ ํ์์์์ ๋ฐฉ์งํฉ๋๋ค. ๊ฐ๋ณ ์คํธ๋ฆผ ์ด๋ฒคํธ๋ฅผ ์ฒ๋ฆฌํ ํ์๊ฐ ์๋ค๋ฉด SDK์ .get_final_message() / .finalMessage() ํฌํผ๋ฅผ ์ฌ์ฉํ์ฌ ์์ ํ ์๋ต์ ๋ฐ์ผ์ธ์.
์ธ์ด ๊ฐ์ง
์ฝ๋ ์์ ๋ฅผ ์ฝ๊ธฐ ์ ์, ์ฌ์ฉ์๊ฐ ์์ ์ค์ธ ์ธ์ด๋ฅผ ํ์ธํ์ธ์:
-
ํ๋ก์ ํธ ํ์ผ์ ํ์ธํ์ฌ ์ธ์ด๋ฅผ ์ถ๋ก ํ์ธ์:
*.py,requirements.txt,pyproject.toml,setup.py,Pipfileโ Python โpython/์์ ์ฝ๊ธฐ*.ts,*.tsx,package.json,tsconfig.jsonโ TypeScript โtypescript/์์ ์ฝ๊ธฐ*.js,*.jsx(.tsํ์ผ์ด ์๋ ๊ฒฝ์ฐ) โ TypeScript โ JS๋ ๋์ผํ SDK๋ฅผ ์ฌ์ฉํ๋ฏ๋กtypescript/์์ ์ฝ๊ธฐ*.java,pom.xml,build.gradleโ Java โjava/์์ ์ฝ๊ธฐ*.kt,*.kts,build.gradle.ktsโ Java โ Kotlin์ Java SDK๋ฅผ ์ฌ์ฉํ๋ฏ๋กjava/์์ ์ฝ๊ธฐ*.scala,build.sbtโ Java โ Scala๋ Java SDK๋ฅผ ์ฌ์ฉํ๋ฏ๋กjava/์์ ์ฝ๊ธฐ*.go,go.modโ Go โgo/์์ ์ฝ๊ธฐ*.rb,Gemfileโ Ruby โruby/์์ ์ฝ๊ธฐ*.cs,*.csprojโ C# โcsharp/์์ ์ฝ๊ธฐ*.php,composer.jsonโ PHP โphp/์์ ์ฝ๊ธฐ
-
์ฌ๋ฌ ์ธ์ด๊ฐ ๊ฐ์ง๋ ๊ฒฝ์ฐ (์: Python๊ณผ TypeScript ํ์ผ์ด ๋ชจ๋ ์๋ ๊ฒฝ์ฐ):
- ์ฌ์ฉ์์ ํ์ฌ ํ์ผ์ด๋ ์ง๋ฌธ์ด ์ด๋ค ์ธ์ด์ ๊ด๋ จ๋๋์ง ํ์ธํ์ธ์
- ์ฌ์ ํ ๋ชจํธํ๋ค๋ฉด ์ง๋ฌธํ์ธ์: "Python๊ณผ TypeScript ํ์ผ์ด ๋ชจ๋ ๊ฐ์ง๋์์ต๋๋ค. Claude API ํตํฉ์ ์ด๋ค ์ธ์ด๋ฅผ ์ฌ์ฉํ๊ณ ๊ณ์ ๊ฐ์?"
-
์ธ์ด๋ฅผ ์ถ๋ก ํ ์ ์๋ ๊ฒฝ์ฐ (๋น ํ๋ก์ ํธ, ์์ค ํ์ผ ์์, ๋๋ ์ง์ํ์ง ์๋ ์ธ์ด):
- AskUserQuestion์ ์ต์ ์ ์ ์ํ์ธ์: Python, TypeScript, Java, Go, Ruby, cURL/raw HTTP, C#, PHP
- AskUserQuestion์ ์ฌ์ฉํ ์ ์๋ ๊ฒฝ์ฐ, Python ์์ ๋ฅผ ๊ธฐ๋ณธ์ผ๋ก ์ฌ์ฉํ๊ณ ๋ค์๊ณผ ๊ฐ์ด ์๋ดํ์ธ์: "Python ์์ ๋ฅผ ํ์ํฉ๋๋ค. ๋ค๋ฅธ ์ธ์ด๊ฐ ํ์ํ์๋ฉด ์๋ ค์ฃผ์ธ์."
-
์ง์ํ์ง ์๋ ์ธ์ด๊ฐ ๊ฐ์ง๋ ๊ฒฝ์ฐ (Rust, Swift, C++, Elixir ๋ฑ):
curl/์ cURL/raw HTTP ์์ ๋ฅผ ์ ์ํ๊ณ ์ปค๋ฎค๋ํฐ SDK๊ฐ ์์ ์ ์์์ ์๋ดํ์ธ์- ์ฐธ์กฐ ๊ตฌํ์ผ๋ก Python ๋๋ TypeScript ์์ ๋ฅผ ๋ณด์ฌ์ค ๊ฒ์ ์ ์ํ์ธ์
-
์ฌ์ฉ์๊ฐ cURL/raw HTTP ์์ ๋ฅผ ํ์๋ก ํ๋ ๊ฒฝ์ฐ,
curl/์์ ์ฝ์ผ์ธ์.
์ธ์ด๋ณ ๊ธฐ๋ฅ ์ง์
| ์ธ์ด | Tool Runner | Agent SDK | ๋น๊ณ |
|---|---|---|---|
| Python | Yes (beta) | Yes | ์ ์ฒด ์ง์ โ @beta_tool ๋ฐ์ฝ๋ ์ดํฐ |
| TypeScript | Yes (beta) | Yes | ์ ์ฒด ์ง์ โ betaZodTool + Zod |
| Java | Yes (beta) | No | ์ด๋ ธํ ์ด์ ํด๋์ค๋ฅผ ์ฌ์ฉํ ๋ฒ ํ ๋๊ตฌ |
| Go | Yes (beta) | No | toolrunner ํจํค์ง์ BetaToolRunner |
| Ruby | Yes (beta) | No | ๋ฒ ํ์ BaseTool + tool_runner |
| cURL | N/A | N/A | Raw HTTP, SDK ๊ธฐ๋ฅ ์์ |
| C# | No | No | ๊ณต์ SDK |
| PHP | No | No | ๊ณต์ SDK |
์ด๋ค ์ํผ์ค๋ฅผ ์ฌ์ฉํด์ผ ํ๋์?
๋จ์ํ๊ฒ ์์ํ์ธ์. ํ์๋ฅผ ์ถฉ์กฑํ๋ ๊ฐ์ฅ ๋จ์ํ ํฐ์ด๋ฅผ ๊ธฐ๋ณธ์ผ๋ก ์ฌ์ฉํ์ธ์. ๋จ์ผ API ํธ์ถ๊ณผ ์ํฌํ๋ก์ฐ๊ฐ ๋๋ถ๋ถ์ ์ฌ์ฉ ์ฌ๋ก๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค โ ์์ ์ด ์ง์ ์ผ๋ก ๊ฐ๋ฐฉํ์ด๊ณ ๋ชจ๋ธ ์ฃผ๋์ ์ธ ํ์์ ํ์๋ก ํ ๋๋ง ์์ด์ ํธ๋ฅผ ์ฌ์ฉํ์ธ์.
| ์ฌ์ฉ ์ฌ๋ก | ํฐ์ด | ๊ถ์ฅ ์ํผ์ค | ์ด์ |
|---|---|---|---|
| ๋ถ๋ฅ, ์์ฝ, ์ถ์ถ, Q&A | ๋จ์ผ LLM ํธ์ถ | Claude API | ํ๋์ ์์ฒญ, ํ๋์ ์๋ต |
| ๋ฐฐ์น ์ฒ๋ฆฌ ๋๋ ์๋ฒ ๋ฉ | ๋จ์ผ LLM ํธ์ถ | Claude API | ์ ์ฉ ์๋ํฌ์ธํธ |
| ์ฝ๋๋ก ์ ์ด๋๋ ๋ก์ง์ ๋ค๋จ๊ณ ํ์ดํ๋ผ์ธ | ์ํฌํ๋ก์ฐ | Claude API + tool use | ์ฌ์ฉ์๊ฐ ๋ฃจํ๋ฅผ ์กฐ์จ |
| ์์ฒด ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ ์ปค์คํ ์์ด์ ํธ | ์์ด์ ํธ | Claude API + tool use | ์ต๋ํ์ ์ ์ฐ์ฑ |
| ํ์ผ/์น/ํฐ๋ฏธ๋ ์ ๊ทผ์ด ๊ฐ๋ฅํ AI ์์ด์ ํธ | ์์ด์ ํธ | Agent SDK | ๋ด์ฅ ๋๊ตฌ, ์์ ์ฑ, MCP ์ง์ |
| ์์ด์ ํฑ ์ฝ๋ฉ ์ด์์คํดํธ | ์์ด์ ํธ | Agent SDK | ์ด ์ฌ์ฉ ์ฌ๋ก๋ฅผ ์ํด ์ค๊ณ๋จ |
| ๋ด์ฅ ๊ถํ ๋ฐ ๊ฐ๋๋ ์ผ์ด ํ์ํ ๊ฒฝ์ฐ | ์์ด์ ํธ | Agent SDK | ์์ ๊ธฐ๋ฅ ํฌํจ |
์ฐธ๊ณ : Agent SDK๋ ๋ด์ฅ ํ์ผ/์น/ํฐ๋ฏธ๋ ๋๊ตฌ, ๊ถํ, MCP๋ฅผ ๋ฐ๋ก ์ฌ์ฉํ๊ณ ์ถ์ ๋ ์ฌ์ฉํฉ๋๋ค. ์์ฒด ๋๊ตฌ๋ก ์์ด์ ํธ๋ฅผ ๊ตฌ์ถํ๋ ค๋ฉด Claude API๊ฐ ์ฌ๋ฐ๋ฅธ ์ ํ์ ๋๋ค โ ์๋ ๋ฃจํ ์ฒ๋ฆฌ๋ฅผ ์ํด tool runner๋ฅผ ์ฌ์ฉํ๊ฑฐ๋, ์ธ๋ฐํ ์ ์ด(์น์ธ ๊ฒ์ดํธ, ์ปค์คํ ๋ก๊น , ์กฐ๊ฑด๋ถ ์คํ)๋ฅผ ์ํด ์๋ ๋ฃจํ๋ฅผ ์ฌ์ฉํ์ธ์.
๊ฒฐ์ ํธ๋ฆฌ
์ ํ๋ฆฌ์ผ์ด์
์ ๋ฌด์์ด ํ์ํ๊ฐ์?
1. ๋จ์ผ LLM ํธ์ถ (๋ถ๋ฅ, ์์ฝ, ์ถ์ถ, Q&A)
โโโ Claude API โ ํ๋์ ์์ฒญ, ํ๋์ ์๋ต
2. Claude๊ฐ ์์
์ ์ผ๋ถ๋ก ํ์ผ์ ์ฝ๊ฑฐ๋ ์ฐ๊ณ , ์น์ ํ์ํ๊ฑฐ๋,
์
ธ ๋ช
๋ น์ ์คํํด์ผ ํ๋์? (์ฑ์ด ํ์ผ์ ์ฝ์ด์ Claude์ ์ ๋ฌํ๋ ๊ฒ์ด ์๋๋ผ,
Claude ์์ฒด๊ฐ ํ์ผ/์น/์
ธ์ ๋ฐ๊ฒฌํ๊ณ ์ ๊ทผํด์ผ ํ๋ ๊ฒฝ์ฐ์ธ๊ฐ์?)
โโโ ์ โ Agent SDK โ ๋ด์ฅ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ธ์, ์ง์ ์ฌ๊ตฌํํ์ง ๋ง์ธ์
์์: "์ฝ๋๋ฒ ์ด์ค์์ ๋ฒ๊ทธ ๊ฒ์", "๋๋ ํ ๋ฆฌ์ ๋ชจ๋ ํ์ผ ์์ฝ",
"์๋ธ์์ด์ ํธ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฒ๊ทธ ์ฐพ๊ธฐ", "์น ๊ฒ์์ผ๋ก ์ฃผ์ ์กฐ์ฌ"
3. ์ํฌํ๋ก์ฐ (๋ค๋จ๊ณ, ์ฝ๋๋ก ์กฐ์จ, ์์ฒด ๋๊ตฌ ์ฌ์ฉ)
โโโ Claude API์ tool use โ ์ฌ์ฉ์๊ฐ ๋ฃจํ๋ฅผ ์ ์ด
4. ๊ฐ๋ฐฉํ ์์ด์ ํธ (๋ชจ๋ธ์ด ์์ฒด์ ์ผ๋ก ๊ฒฝ๋ก๋ฅผ ๊ฒฐ์ , ์์ฒด ๋๊ตฌ ์ฌ์ฉ)
โโโ Claude API ์์ด์ ํฑ ๋ฃจํ (์ต๋ํ์ ์ ์ฐ์ฑ)
์์ด์ ํธ๋ฅผ ๊ตฌ์ถํด์ผ ํ ๊น์?
์์ด์ ํธ ํฐ์ด๋ฅผ ์ ํํ๊ธฐ ์ ์, ๋ค ๊ฐ์ง ๊ธฐ์ค์ ๋ชจ๋ ํ์ธํ์ธ์:
- ๋ณต์ก์ฑ โ ์์ ์ด ๋ค๋จ๊ณ์ด๋ฉฐ ์ฌ์ ์ ์์ ํ ๋ช ์ธํ๊ธฐ ์ด๋ ค์ด๊ฐ์? (์: "์ด ์ค๊ณ ๋ฌธ์๋ฅผ PR๋ก ๋ณํ" vs. "์ด PDF์์ ์ ๋ชฉ์ ์ถ์ถ")
- ๊ฐ์น โ ๊ฒฐ๊ณผ๊ฐ ๋ ๋์ ๋น์ฉ๊ณผ ์ง์ฐ ์๊ฐ์ ์ ๋นํํ๋์?
- ์คํ ๊ฐ๋ฅ์ฑ โ Claude๊ฐ ์ด ์์ ์ ํ์ ๋ฅ์ํ๊ฐ์?
- ์ค๋ฅ ๋น์ฉ โ ์ค๋ฅ๋ฅผ ๊ฐ์งํ๊ณ ๋ณต๊ตฌํ ์ ์๋์? (ํ ์คํธ, ๋ฆฌ๋ทฐ, ๋กค๋ฐฑ)
์ด ์ค ํ๋๋ผ๋ "์๋์ค"๋ผ๋ฉด, ๋ ๋จ์ํ ํฐ์ด(๋จ์ผ ํธ์ถ ๋๋ ์ํฌํ๋ก์ฐ)๋ฅผ ์ ์งํ์ธ์.
์ํคํ ์ฒ
๋ชจ๋ ๊ฒ์ POST /v1/messages๋ฅผ ํตํด ์ฒ๋ฆฌ๋ฉ๋๋ค. ๋๊ตฌ์ ์ถ๋ ฅ ์ ์ฝ ์กฐ๊ฑด์ ์ด ๋จ์ผ ์๋ํฌ์ธํธ์ ๊ธฐ๋ฅ์ด๋ฉฐ โ ๋ณ๋์ API๊ฐ ์๋๋๋ค.
์ฌ์ฉ์ ์ ์ ๋๊ตฌ โ ๋๊ตฌ๋ฅผ ์ ์ํ๋ฉด(๋ฐ์ฝ๋ ์ดํฐ, Zod ์คํค๋ง, ๋๋ raw JSON์ผ๋ก), SDK์ tool runner๊ฐ API ํธ์ถ, ํจ์ ์คํ, Claude๊ฐ ์๋ฃ๋ ๋๊น์ง์ ๋ฃจํ์ ์ฒ๋ฆฌํฉ๋๋ค. ์์ ํ ์ ์ด๋ฅผ ์ํ๋ฉด ๋ฃจํ๋ฅผ ์๋์ผ๋ก ์์ฑํ ์ ์์ต๋๋ค.
์๋ฒ ์ธก ๋๊ตฌ โ Anthropic ์ธํ๋ผ์์ ์คํ๋๋ Anthropic ํธ์คํ
๋๊ตฌ์
๋๋ค. ์ฝ๋ ์คํ์ ์์ ํ ์๋ฒ ์ธก์์ ์ด๋ฃจ์ด์ง๋๋ค(tools์ ์ ์ธํ๋ฉด Claude๊ฐ ์๋์ผ๋ก ์ฝ๋๋ฅผ ์คํํฉ๋๋ค). ์ปดํจํฐ ์ฌ์ฉ์ ์๋ฒ ํธ์คํ
๋๋ ์
ํ ํธ์คํ
์ด ๊ฐ๋ฅํฉ๋๋ค.
๊ตฌ์กฐํ๋ ์ถ๋ ฅ โ Messages API ์๋ต ํ์(output_config.format) ๋ฐ/๋๋ ๋๊ตฌ ํ๋ผ๋ฏธํฐ ๊ฒ์ฆ(strict: true)์ ์ ํํฉ๋๋ค. ๊ถ์ฅ ์ ๊ทผ๋ฒ์ client.messages.parse()๋ก, ์คํค๋ง์ ๋ํด ์๋ต์ ์๋์ผ๋ก ๊ฒ์ฆํฉ๋๋ค. ์ฐธ๊ณ : ์ด์ output_format ํ๋ผ๋ฏธํฐ๋ ๋ ์ด์ ์ฌ์ฉ๋์ง ์์ผ๋ฉฐ, messages.create()์์ output_config: {format: {...}}๋ฅผ ์ฌ์ฉํ์ธ์.
์ง์ ์๋ํฌ์ธํธ โ Batches(POST /v1/messages/batches), Files(POST /v1/files), Token Counting์ Messages API ์์ฒญ์ ๋ฐ์ดํฐ๋ฅผ ๊ณต๊ธํ๊ฑฐ๋ ์ด๋ฅผ ์ง์ํฉ๋๋ค.
ํ์ฌ ๋ชจ๋ธ (์บ์ ๋ ์ง: 2026-02-17)
| ๋ชจ๋ธ | ๋ชจ๋ธ ID | ์ปจํ ์คํธ | ์ ๋ ฅ $/1M | ์ถ๋ ฅ $/1M |
|---|---|---|---|---|
| Claude Opus 4.6 | claude-opus-4-6 | 200K (1M beta) | $5.00 | $25.00 |
| Claude Sonnet 4.6 | claude-sonnet-4-6 | 200K (1M beta) | $3.00 | $15.00 |
| Claude Haiku 4.5 | claude-haiku-4-5 | 200K | $1.00 | $5.00 |
์ฌ์ฉ์๊ฐ ๋ช
์์ ์ผ๋ก ๋ค๋ฅธ ๋ชจ๋ธ์ ์ง์ ํ์ง ์๋ ํ ํญ์ claude-opus-4-6์ ์ฌ์ฉํ์ธ์. ์ด๊ฒ์ ํ์ ๋ถ๊ฐ์
๋๋ค. ์ฌ์ฉ์๊ฐ ๋ฌธ์ ๊ทธ๋๋ก "sonnet ์ฌ์ฉ" ๋๋ "haiku ์ฌ์ฉ"์ด๋ผ๊ณ ๋งํ์ง ์๋ ํ claude-sonnet-4-6, claude-sonnet-4-5, ๋๋ ๋ค๋ฅธ ๋ชจ๋ธ์ ์ฌ์ฉํ์ง ๋ง์ธ์. ๋น์ฉ ๋๋ฌธ์ ์ ๋ ๋ค์ด๊ทธ๋ ์ด๋ํ์ง ๋ง์ธ์ โ ๊ทธ๊ฒ์ ์ฌ์ฉ์์ ๊ฒฐ์ ์ด์ง ๋น์ ์ ๊ฒฐ์ ์ด ์๋๋๋ค.
์ค์: ์ ํ
์ด๋ธ์ ์ ํํ ๋ชจ๋ธ ID ๋ฌธ์์ด๋ง ์ฌ์ฉํ์ธ์ โ ๊ทธ๋๋ก ์์ ํ ํํ์
๋๋ค. ๋ ์ง ์ ๋ฏธ์ฌ๋ฅผ ์ถ๊ฐํ์ง ๋ง์ธ์. ์๋ฅผ ๋ค์ด, claude-sonnet-4-5๋ฅผ ์ฌ์ฉํ๊ณ , claude-sonnet-4-5-20250514๋ ํ์ต ๋ฐ์ดํฐ์์ ๊ธฐ์ตํ ์ ์๋ ๋ค๋ฅธ ๋ ์ง ์ ๋ฏธ์ฌ ๋ณํ์ ์ฌ์ฉํ์ง ๋ง์ธ์. ์ฌ์ฉ์๊ฐ ํ
์ด๋ธ์ ์๋ ์ด์ ๋ชจ๋ธ์ ์์ฒญํ๋ ๊ฒฝ์ฐ(์: "opus 4.5", "sonnet 3.7"), ์ ํํ ID๋ shared/models.md์์ ์ฝ์ผ์ธ์ โ ์ง์ ๋ง๋ค์ง ๋ง์ธ์.
์ฐธ๊ณ : ์์ ๋ชจ๋ธ ๋ฌธ์์ด ์ค ์ต์ํ์ง ์์ ๊ฒ์ด ์๋ค๋ฉด, ๊ทธ๊ฒ์ ๋น์ฐํฉ๋๋ค โ ํ์ต ๋ฐ์ดํฐ ์ปท์คํ ์ดํ์ ์ถ์๋ ๋ชจ๋ธ์ด๋ผ๋ ์๋ฏธ์ ๋๋ค. ์ค์ ๋ชจ๋ธ์ด๋ ์์ฌํ์ธ์; ์ฐ๋ฆฌ๊ฐ ์ฅ๋์น๋ ๊ฒ์ด ์๋๋๋ค.
์ฌ๊ณ ๋ฐ ๋ ธ๋ ฅ (๋น ๋ฅธ ์ฐธ์กฐ)
Opus 4.6 โ ์ ์ํ ์ฌ๊ณ (๊ถ์ฅ): thinking: {type: "adaptive"}๋ฅผ ์ฌ์ฉํ์ธ์. Claude๊ฐ ์ธ์ , ์ผ๋ง๋ ์ฌ๊ณ ํ ์ง ๋์ ์ผ๋ก ๊ฒฐ์ ํฉ๋๋ค. budget_tokens๊ฐ ํ์ ์์ต๋๋ค โ budget_tokens๋ Opus 4.6๊ณผ Sonnet 4.6์์ ๋ ์ด์ ์ฌ์ฉ๋์ง ์์ผ๋ฉฐ ์ฌ์ฉํด์๋ ์ ๋ฉ๋๋ค. ์ ์ํ ์ฌ๊ณ ๋ ์ธํฐ๋ฆฌ๋ธ๋ ์ฌ๊ณ ๋ ์๋์ผ๋ก ํ์ฑํํฉ๋๋ค(๋ฒ ํ ํค๋ ๋ถํ์). ์ฌ์ฉ์๊ฐ "ํ์ฅ๋ ์ฌ๊ณ ", "์ฌ๊ณ ์์ฐ", ๋๋ budget_tokens๋ฅผ ์์ฒญํ ๋: ํญ์ Opus 4.6์ thinking: {type: "adaptive"}๋ฅผ ์ฌ์ฉํ์ธ์. ์ฌ๊ณ ์ ๋ํ ๊ณ ์ ํ ํฐ ์์ฐ ๊ฐ๋
์ ๋ ์ด์ ์ฌ์ฉ๋์ง ์์ต๋๋ค โ ์ ์ํ ์ฌ๊ณ ๊ฐ ์ด๋ฅผ ๋์ฒดํฉ๋๋ค. budget_tokens๋ฅผ ์ฌ์ฉํ์ง ๋ง๊ณ ์ด์ ๋ชจ๋ธ๋ก ์ ํํ์ง ๋ง์ธ์.
๋
ธ๋ ฅ ํ๋ผ๋ฏธํฐ (GA, ๋ฒ ํ ํค๋ ๋ถํ์): ์ฌ๊ณ ๊น์ด์ ์ ์ฒด ํ ํฐ ์ฌ์ฉ๋์ output_config: {effort: "low"|"medium"|"high"|"max"}๋ก ์ ์ดํฉ๋๋ค(output_config ๋ด๋ถ์ ์์นํ๋ฉฐ, ์ต์์ ๋ ๋ฒจ์ด ์๋๋๋ค). ๊ธฐ๋ณธ๊ฐ์ high์
๋๋ค(์๋ตํ๋ ๊ฒ๊ณผ ๋์ผ). max๋ Opus 4.6 ์ ์ฉ์
๋๋ค. Opus 4.5, Opus 4.6, Sonnet 4.6์์ ์๋ํฉ๋๋ค. Sonnet 4.5 / Haiku 4.5์์๋ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค. ์ต์์ ๋น์ฉ-ํ์ง ํธ๋ ์ด๋์คํ๋ฅผ ์ํด ์ ์ํ ์ฌ๊ณ ์ ๊ฒฐํฉํ์ธ์. ์๋ธ์์ด์ ํธ๋ ๋จ์ ์์
์๋ low๋ฅผ, ๊ฐ์ฅ ๊น์ ์ถ๋ก ์๋ max๋ฅผ ์ฌ์ฉํ์ธ์.
Sonnet 4.6: ์ ์ํ ์ฌ๊ณ (thinking: {type: "adaptive"})๋ฅผ ์ง์ํฉ๋๋ค. budget_tokens๋ Sonnet 4.6์์ ๋ ์ด์ ์ฌ์ฉ๋์ง ์์ต๋๋ค โ ๋์ ์ ์ํ ์ฌ๊ณ ๋ฅผ ์ฌ์ฉํ์ธ์.
์ด์ ๋ชจ๋ธ (๋ช
์์ ์ผ๋ก ์์ฒญ๋ ๊ฒฝ์ฐ์๋ง): ์ฌ์ฉ์๊ฐ Sonnet 4.5 ๋๋ ๋ค๋ฅธ ์ด์ ๋ชจ๋ธ์ ๊ตฌ์ฒด์ ์ผ๋ก ์์ฒญํ๋ ๊ฒฝ์ฐ, thinking: {type: "enabled", budget_tokens: N}์ ์ฌ์ฉํ์ธ์. budget_tokens๋ max_tokens๋ณด๋ค ์์์ผ ํฉ๋๋ค(์ต์ 1024). ์ฌ์ฉ์๊ฐ budget_tokens๋ฅผ ์ธ๊ธํ๋ค๊ณ ํด์ ์ด์ ๋ชจ๋ธ์ ์ ํํ์ง ๋ง์ธ์ โ ๋์ Opus 4.6์ ์ ์ํ ์ฌ๊ณ ๋ฅผ ์ฌ์ฉํ์ธ์.
์์ถ (๋น ๋ฅธ ์ฐธ์กฐ)
๋ฒ ํ, Opus 4.6 ์ ์ฉ. 200K ์ปจํ
์คํธ ์๋์ฐ๋ฅผ ์ด๊ณผํ ์ ์๋ ์ฅ์๊ฐ ๋ํ์ ๊ฒฝ์ฐ, ์๋ฒ ์ธก ์์ถ์ ํ์ฑํํ์ธ์. API๊ฐ ํธ๋ฆฌ๊ฑฐ ์๊ณ๊ฐ(๊ธฐ๋ณธ๊ฐ: 150K ํ ํฐ)์ ๋๋ฌํ๋ฉด ์ด์ ์ปจํ
์คํธ๋ฅผ ์๋์ผ๋ก ์์ฝํฉ๋๋ค. ๋ฒ ํ ํค๋ compact-2026-01-12๊ฐ ํ์ํฉ๋๋ค.
์ค์: ๋งค ํด๋ง๋ค response.content(ํ
์คํธ๋ง์ด ์๋)๋ฅผ ๋ฉ์์ง์ ๋ค์ ์ถ๊ฐํ์ธ์. ์๋ต์ ์์ถ ๋ธ๋ก์ ๋ณด์กด๋์ด์ผ ํฉ๋๋ค โ API๊ฐ ๋ค์ ์์ฒญ์์ ์์ถ๋ ํ์คํ ๋ฆฌ๋ฅผ ๋์ฒดํ๋ ๋ฐ ์ฌ์ฉํฉ๋๋ค. ํ
์คํธ ๋ฌธ์์ด๋ง ์ถ์ถํ์ฌ ์ถ๊ฐํ๋ฉด ์์ถ ์ํ๊ฐ ์กฐ์ฉํ ์์ค๋ฉ๋๋ค.
์ฝ๋ ์์ ๋ {lang}/claude-api/README.md(์์ถ ์น์
)๋ฅผ ์ฐธ์กฐํ์ธ์. ์ต์ ๋ฌธ์๋ shared/live-sources.md์์ WebFetch๋ฅผ ํตํด ํ์ธํ์ธ์.
์ฝ๊ธฐ ๊ฐ์ด๋
์ธ์ด๋ฅผ ๊ฐ์งํ ํ, ์ฌ์ฉ์๊ฐ ํ์๋ก ํ๋ ๊ฒ์ ๋ฐ๋ผ ๊ด๋ จ ํ์ผ์ ์ฝ์ผ์ธ์:
๋น ๋ฅธ ์์ ์ฐธ์กฐ
๋จ์ผ ํ
์คํธ ๋ถ๋ฅ/์์ฝ/์ถ์ถ/Q&A:
โ {lang}/claude-api/README.md๋ง ์ฝ๊ธฐ
์ฑํ
UI ๋๋ ์ค์๊ฐ ์๋ต ํ์:
โ {lang}/claude-api/README.md + {lang}/claude-api/streaming.md ์ฝ๊ธฐ
์ฅ์๊ฐ ๋ํ (์ปจํ
์คํธ ์๋์ฐ ์ด๊ณผ ๊ฐ๋ฅ):
โ {lang}/claude-api/README.md ์ฝ๊ธฐ โ ์์ถ ์น์
์ฐธ์กฐ
ํจ์ ํธ์ถ / tool use / ์์ด์ ํธ:
โ {lang}/claude-api/README.md + shared/tool-use-concepts.md + {lang}/claude-api/tool-use.md ์ฝ๊ธฐ
๋ฐฐ์น ์ฒ๋ฆฌ (์ง์ฐ ์๊ฐ์ ๋ฏผ๊ฐํ์ง ์์):
โ {lang}/claude-api/README.md + {lang}/claude-api/batches.md ์ฝ๊ธฐ
์ฌ๋ฌ ์์ฒญ์ ๊ฑธ์น ํ์ผ ์
๋ก๋:
โ {lang}/claude-api/README.md + {lang}/claude-api/files-api.md ์ฝ๊ธฐ
๋ด์ฅ ๋๊ตฌ๊ฐ ์๋ ์์ด์ ํธ (ํ์ผ/์น/ํฐ๋ฏธ๋):
โ {lang}/agent-sdk/README.md + {lang}/agent-sdk/patterns.md ์ฝ๊ธฐ
Claude API (์ ์ฒด ํ์ผ ์ฐธ์กฐ)
์ธ์ด๋ณ Claude API ํด๋ ({language}/claude-api/)๋ฅผ ์ฝ์ผ์ธ์:
{language}/claude-api/README.mdโ ์ด๊ฒ์ ๋จผ์ ์ฝ์ผ์ธ์. ์ค์น, ๋น ๋ฅธ ์์, ์ผ๋ฐ์ ์ธ ํจํด, ์ค๋ฅ ์ฒ๋ฆฌ.shared/tool-use-concepts.mdโ ์ฌ์ฉ์๊ฐ ํจ์ ํธ์ถ, ์ฝ๋ ์คํ, ๋ฉ๋ชจ๋ฆฌ, ๋๋ ๊ตฌ์กฐํ๋ ์ถ๋ ฅ์ด ํ์ํ ๋ ์ฝ์ผ์ธ์. ๊ฐ๋ ์ ๊ธฐ์ด๋ฅผ ๋ค๋ฃน๋๋ค.{language}/claude-api/tool-use.mdโ ์ธ์ด๋ณ tool use ์ฝ๋ ์์ ๋ฅผ ์ฝ์ผ์ธ์ (tool runner, ์๋ ๋ฃจํ, ์ฝ๋ ์คํ, ๋ฉ๋ชจ๋ฆฌ, ๊ตฌ์กฐํ๋ ์ถ๋ ฅ).{language}/claude-api/streaming.mdโ ์ฑํ UI ๋๋ ์๋ต์ ์ ์ง์ ์ผ๋ก ํ์ํ๋ ์ธํฐํ์ด์ค๋ฅผ ๊ตฌ์ถํ ๋ ์ฝ์ผ์ธ์.{language}/claude-api/batches.mdโ ์คํ๋ผ์ธ์ผ๋ก ๋ง์ ์์ฒญ์ ์ฒ๋ฆฌํ ๋ ์ฝ์ผ์ธ์ (์ง์ฐ ์๊ฐ์ ๋ฏผ๊ฐํ์ง ์์). 50% ๋น์ฉ์ผ๋ก ๋น๋๊ธฐ์ ์ผ๋ก ์คํ๋ฉ๋๋ค.{language}/claude-api/files-api.mdโ ๋์ผํ ํ์ผ์ ์ฌ๋ฌ ์์ฒญ์ ๊ฑธ์ณ ์ฌ์ ๋ก๋ ์์ด ๋ณด๋ผ ๋ ์ฝ์ผ์ธ์.shared/error-codes.mdโ HTTP ์ค๋ฅ๋ฅผ ๋๋ฒ๊น ํ๊ฑฐ๋ ์ค๋ฅ ์ฒ๋ฆฌ๋ฅผ ๊ตฌํํ ๋ ์ฝ์ผ์ธ์.shared/live-sources.mdโ ์ต์ ๊ณต์ ๋ฌธ์๋ฅผ ๊ฐ์ ธ์ค๊ธฐ ์ํ WebFetch URL.
์ฐธ๊ณ : Java, Go, Ruby, C#, PHP, cURL์ ๊ฒฝ์ฐ โ ๋ชจ๋ ๊ธฐ๋ณธ ์ฌํญ์ ๋ค๋ฃจ๋ ๋จ์ผ ํ์ผ์ด ์์ต๋๋ค. ํด๋น ํ์ผ๊ณผ ํ์์ ๋ฐ๋ผ
shared/tool-use-concepts.md๋ฐshared/error-codes.md๋ฅผ ์ฝ์ผ์ธ์.
Agent SDK
์ธ์ด๋ณ Agent SDK ํด๋ ({language}/agent-sdk/)๋ฅผ ์ฝ์ผ์ธ์. Agent SDK๋ Python๊ณผ TypeScript์์๋ง ์ฌ์ฉ ๊ฐ๋ฅํฉ๋๋ค.
{language}/agent-sdk/README.mdโ ์ค์น, ๋น ๋ฅธ ์์, ๋ด์ฅ ๋๊ตฌ, ๊ถํ, MCP, ํ .{language}/agent-sdk/patterns.mdโ ์ปค์คํ ๋๊ตฌ, ํ , ์๋ธ์์ด์ ํธ, MCP ํตํฉ, ์ธ์ ์ฌ๊ฐ.shared/live-sources.mdโ ์ต์ Agent SDK ๋ฌธ์๋ฅผ ์ํ WebFetch URL.
WebFetch ์ฌ์ฉ ์์
๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ WebFetch๋ฅผ ์ฌ์ฉํ์ฌ ์ต์ ๋ฌธ์๋ฅผ ๊ฐ์ ธ์ค์ธ์:
- ์ฌ์ฉ์๊ฐ "์ต์ " ๋๋ "ํ์ฌ" ์ ๋ณด๋ฅผ ์์ฒญํ๋ ๊ฒฝ์ฐ
- ์บ์๋ ๋ฐ์ดํฐ๊ฐ ์ฌ๋ฐ๋ฅด์ง ์์ ๊ฒ ๊ฐ์ ๊ฒฝ์ฐ
- ์ฌ์ฉ์๊ฐ ์ฌ๊ธฐ์์ ๋ค๋ฃจ์ง ์๋ ๊ธฐ๋ฅ์ ๋ํด ์ง๋ฌธํ๋ ๊ฒฝ์ฐ
๋ผ์ด๋ธ ๋ฌธ์ URL์ shared/live-sources.md์ ์์ต๋๋ค.
์ผ๋ฐ์ ์ธ ํจ์
- API์ ํ์ผ์ด๋ ์ฝํ ์ธ ๋ฅผ ์ ๋ฌํ ๋ ์ ๋ ฅ์ ์๋ฅด์ง ๋ง์ธ์. ์ฝํ ์ธ ๊ฐ ์ปจํ ์คํธ ์๋์ฐ์ ๋ง์ง ์์ ์ ๋๋ก ๊ธด ๊ฒฝ์ฐ, ์๋์ผ๋ก ์๋ฅด๋ ๋์ ์ฌ์ฉ์์๊ฒ ์๋ฆฌ๊ณ ์ต์ (์ฒญํน, ์์ฝ ๋ฑ)์ ๋ ผ์ํ์ธ์.
- Opus 4.6 / Sonnet 4.6 ์ฌ๊ณ :
thinking: {type: "adaptive"}๋ฅผ ์ฌ์ฉํ์ธ์ โbudget_tokens๋ฅผ ์ฌ์ฉํ์ง ๋ง์ธ์ (Opus 4.6๊ณผ Sonnet 4.6 ๋ชจ๋์์ ๋ ์ด์ ์ฌ์ฉ๋์ง ์์). ์ด์ ๋ชจ๋ธ์ ๊ฒฝ์ฐ,budget_tokens๋max_tokens๋ณด๋ค ์์์ผ ํฉ๋๋ค(์ต์ 1024). ์๋ชป ์ค์ ํ๋ฉด ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค. - Opus 4.6 prefill ์ ๊ฑฐ: ์ด์์คํดํธ ๋ฉ์์ง ํ๋ฆฌํ(๋ง์ง๋ง ์ด์์คํดํธ ํด ํ๋ฆฌํ)์ Opus 4.6์์ 400 ์ค๋ฅ๋ฅผ ๋ฐํํฉ๋๋ค. ์๋ต ํ์์ ์ ์ดํ๋ ค๋ฉด ๊ตฌ์กฐํ๋ ์ถ๋ ฅ(
output_config.format) ๋๋ ์์คํ ํ๋กฌํํธ ์ง์๋ฅผ ๋์ ์ฌ์ฉํ์ธ์. - 128K ์ถ๋ ฅ ํ ํฐ: Opus 4.6์ ์ต๋ 128K
max_tokens๋ฅผ ์ง์ํ์ง๋ง, SDK๋ HTTP ํ์์์์ ๋ฐฉ์งํ๊ธฐ ์ํด ํฐmax_tokens์ ๋ํด ์คํธ๋ฆฌ๋ฐ์ ์๊ตฌํฉ๋๋ค..stream()๊ณผ.get_final_message()/.finalMessage()๋ฅผ ์ฌ์ฉํ์ธ์. - Tool call JSON ํ์ฑ (Opus 4.6): Opus 4.6์ tool call
inputํ๋์์ ๋ค๋ฅธ JSON ๋ฌธ์์ด ์ด์ค์ผ์ดํ์ ์์ฑํ ์ ์์ต๋๋ค(์: ์ ๋์ฝ๋ ๋๋ ์ฌ๋์ ์ด์ค์ผ์ดํ). ํญ์json.loads()/JSON.parse()๋ก ๋๊ตฌ ์ ๋ ฅ์ ํ์ฑํ์ธ์ โ ์ง๋ ฌํ๋ ์ ๋ ฅ์ ๋ํด raw ๋ฌธ์์ด ๋งค์นญ์ ํ์ง ๋ง์ธ์. - ๊ตฌ์กฐํ๋ ์ถ๋ ฅ (๋ชจ๋ ๋ชจ๋ธ):
messages.create()์์ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋output_formatํ๋ผ๋ฏธํฐ ๋์output_config: {format: {...}}๋ฅผ ์ฌ์ฉํ์ธ์. ์ด๊ฒ์ 4.6์ ๊ตญํ๋์ง ์๋ ์ผ๋ฐ์ ์ธ API ๋ณ๊ฒฝ์ ๋๋ค. - SDK ๊ธฐ๋ฅ์ ์ฌ๊ตฌํํ์ง ๋ง์ธ์: SDK๋ ๊ณ ์์ค ํฌํผ๋ฅผ ์ ๊ณตํฉ๋๋ค โ ์ฒ์๋ถํฐ ๊ตฌ์ถํ๋ ๋์ ์ด๊ฒ๋ค์ ์ฌ์ฉํ์ธ์. ๊ตฌ์ฒด์ ์ผ๋ก:
.on()์ด๋ฒคํธ๋ฅผnew Promise()๋ก ๊ฐ์ธ๋ ๋์stream.finalMessage()๋ฅผ ์ฌ์ฉํ์ธ์; ์ค๋ฅ ๋ฉ์์ง๋ฅผ ๋ฌธ์์ด ๋งค์นญํ๋ ๋์ ํ์ ์ด ์ง์ ๋ ์์ธ ํด๋์ค(Anthropic.RateLimitError๋ฑ)๋ฅผ ์ฌ์ฉํ์ธ์; ๋๋ฑํ ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ ์ํ๋ ๋์ SDK ํ์ (Anthropic.MessageParam,Anthropic.Tool,Anthropic.Message๋ฑ)์ ์ฌ์ฉํ์ธ์. - SDK ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ๋ํ ์ปค์คํ
ํ์
์ ์ ์ํ์ง ๋ง์ธ์: SDK๋ ๋ชจ๋ API ๊ฐ์ฒด์ ๋ํ ํ์
์ ๋ด๋ณด๋
๋๋ค. ๋ฉ์์ง์๋
Anthropic.MessageParam, ๋๊ตฌ ์ ์์๋Anthropic.Tool, ๋๊ตฌ ๊ฒฐ๊ณผ์๋Anthropic.ToolUseBlock/Anthropic.ToolResultBlockParam, ์๋ต์๋Anthropic.Message๋ฅผ ์ฌ์ฉํ์ธ์.interface ChatMessage { role: string; content: unknown }๊ณผ ๊ฐ์ ์์ฒด ์ธํฐํ์ด์ค๋ฅผ ์ ์ํ๋ฉด SDK๊ฐ ์ด๋ฏธ ์ ๊ณตํ๋ ๊ฒ์ ์ค๋ณตํ๊ฒ ๋๊ณ ํ์ ์์ ์ฑ์ ์์ต๋๋ค. - ๋ณด๊ณ ์ ๋ฐ ๋ฌธ์ ์ถ๋ ฅ: ๋ณด๊ณ ์, ๋ฌธ์, ๋๋ ์๊ฐํ๋ฅผ ์์ฑํ๋ ์์
์ ๊ฒฝ์ฐ, ์ฝ๋ ์คํ ์๋๋ฐ์ค์๋
python-docx,python-pptx,matplotlib,pillow,pypdf๊ฐ ์ฌ์ ์ค์น๋์ด ์์ต๋๋ค. Claude๋ ํ์์ด ์ง์ ๋ ํ์ผ(DOCX, PDF, ์ฐจํธ)์ ์์ฑํ๊ณ Files API๋ฅผ ํตํด ๋ฐํํ ์ ์์ต๋๋ค โ ์ผ๋ฐ stdout ํ ์คํธ ๋์ "๋ณด๊ณ ์" ๋๋ "๋ฌธ์" ์ ํ์ ์์ฒญ์ ์ด๊ฒ์ ๊ณ ๋ คํ์ธ์.