Strands Decider 2B: 작은 오픈소스 의사결정 모델

Strands Decider 2B: a small, open-source, decision model

strandsagents.com ▲ 274 댓글 78 gmays

요약

Strands Decider 2B는 글을 쓰지 않고 주어진 선택지 중 하나를 골라 확률을 매기는 20억 매개변수 모델입니다.

Strands Agents 프로젝트의 실험 조직인 Strands Labs가 공개했습니다. 마크 브루커 등 세 저자는 개발자가 지금 가진 하드웨어에서 의사결정 모델을 부담 없이 실험해 보도록 일부러 작게 만들었다고 밝혔습니다.

왜 중요한가

  • 에이전트의 반복적인 판단은 로컬의 작은 모델에 맡기고, 어려운 판단만 LLM에 넘겨 비용과 지연을 줄이자는 제안입니다.
  • 결정마다 신뢰도 점수가 함께 나옵니다. 저자들은 프런티어 LLM API로는 얻을 수 없는 정보라고 강조했습니다.
  • 코드와 가중치에 더해 학습 데이터와 학습 스크립트까지 공개해 누구나 직접 고쳐 볼 수 있습니다.

핵심 내용

  • Qwen3.5-2B에서 글을 만드는 출력층을 떼고, 선택지마다 점수를 매기는 100만여 매개변수의 포인터 헤드를 붙였습니다.
  • 예/아니요, 언어 판별, 0~1 감정 점수처럼 정해진 선택지 안에서만 답하므로 코딩·챗봇·요약에는 쓸 수 없습니다.
  • JevBench 공개 세트에서 2B급 33개 모델 중 3위에 올랐고, 2B를 살짝 넘는 모델을 빼면 1위입니다.
  • 판단 한 번에 걸리는 시간의 중앙값은 RTX 3090에서 약 115ms, M3 맥북에서 약 153ms입니다.
  • 예제 에이전트는 도구를 부르기 전에 인자가 사용자 말에 근거하는지, 호출이 섣부른지를 이 모델로 확인합니다.

HN 반응

  • 상시 구동하려면 NPU(신경망 전용 칩)로 옮겨야 한다는 경험담에, 의사결정 모델은 입력 처리만 하니 NPU에 잘 맞는다는 보충이 붙었습니다.
  • 이진 선택을 'noul'로 부르는 건 베르누이에서 따온 말이라는 설명과 함께, 'System One' 같은 유행어 대신 평범한 용어를 쓰자는 비판도 나왔습니다.

댓글

30개 표시 · 전체 78개
  1. real_faxenoff HN

    특화된 마이크로 모델 여러 개를 꾸준히 쓰는 사람으로서 말씀드리자면, 이런 모델(과 JEV 계열 모델)을 PC CPU에서 상시 백그라운드로 돌리면 만족하기 어렵습니다. 처리를 NPU로 넘겨야 합니다. 가는 길에 함정이 많지만 그만한 보람이 있습니다.

    NPU에서는 성능이 두 배 높고 전력 소비는 4분의 1입니다. 팬 소음도 늘지 않고요(무슨 말인지 아실 겁니다).

    이런 종류의 모델들이 벌이는 =배틀 로열= 1차전이 끝날 때까지 한 달쯤 기다렸다가, NPU/iGPU용 솔루션을 만들어 HF에 올릴 생각입니다.

  2. ricardobeat HN

    대부분의 LLM은 지금의 NPU에서 효율적으로 돌아가지 않습니다(프리필 단계는 예외입니다). 그 하드웨어는 다른 종류의 ML 워크로드를 위해 만들어졌으니까요.

  3. mermerico HN

    결정 모델은 프리필만 합니다.

  4. spwa4 HN

    속도가 빠른 이유도 거의 그걸로 설명되고요.

  5. nico HN

    CPU에서 어떤 모델을 돌리고 계세요? 공유해 주실 수 있는 저장소나 gist가 있나요? 모델이랑 사용 사례가 궁금해요. 다국어로 쓰세요, 아니면 단일 언어로 쓰세요?

    그런데 이것에 대한 의견도 꼭 듣고 싶어요. CPU에서 실행하고 학습까지 되는 사전 학습 분류기예요. https://github.com/nicobrenner/jeffy

  6. cyanydeez HN

    NPU를 돌리는 프레임워크는 하나도 못 봤어요. 제 395+에는 짝꿍이 필요한데요.

  7. AbsurdCensor HN

    Lemonade에서 하실 수 있을 것 같습니다. 특히 AMD 시스템에서 하이브리드 실행을 지원하는 모델을 쓰면 됩니다. 프리필은 NPU에서, 토큰 생성은 GPU에서 처리합니다. 이게 전부 GPU로 돌리는 것보다 빠른지 나은지는 잘 모르겠습니다.

  8. shifto HN

    더 느린 대신 전력 효율은 높습니다. 제공되는 건 onyx 모델 중 일부뿐인 걸로 알고 있고, 저는 7940HS CPU에 든 1세대 NPU에서는 아무것도 돌리지 못했습니다.

  9. Infernal HN

    찾으시는 건 FastFlowLM입니다. 옆 댓글에 나온 대로 Lemonade가 이걸 패키지로 포함하고 있고요.

    https://fastflowlm.com/

  10. p_l HN

    구세대 XDNA도 지원해 주면 좋겠는데 말이죠 ㅠㅠ

  11. adenta HN

    이제는 어떤 코미디언이 사람이 뒷받침하는 결정 모델을 내놓는 날이 기다려질 지경이에요.

    소개합니다, Jerry. 말 그대로 Jerry라는 사람이 여러분의 질문에 답해 주는 거예요.

  12. Balooga HN

    아! 그렇다면 ChatTJB가 딱이겠네요 [1]

    [1] - https://chattjb.org/about

  13. jeef_berky HN

    걱정 마세요, Jerry가 알아서 다 조작해 줄 테니까요.

  14. melvinram HN

    댓글 보고 웃음이 났네요.

    Jerry, "The Decider" https://www.youtube.com/watch?v=r8VbzrZ9yHQ

  15. bfung HN

    저도요. 근데 제 머릿속은 바로 릭 앤 모티로 갔어요… Jerry한테 결정을 맡기는 건 절대 사양이에요 XD

  16. throwawayffffas HN

    아, 그건 우회하기 쉬워요. 그 사람이 고르는 선택지를 하나씩 지워 나가다 보면 마지막에 그가 고르지 않은 게 남는데, 그게 정답이거든요.

  17. mattvr HN

    다들 이진 선택을 왜 noul이라고 부르는 거죠? 무슨 뜻이 있는 건가요, 아니면 그냥 Jev의 API를 따라 한 건가요?

  18. WASDx HN

    새 OpenAI Decisions API에서는 이걸 "predicate"라고 부릅니다. API 이름도 "system one"이 아니라 "decisions"이고요. 보통은 새 표준을 만들어 내는 걸 좋아하지 않지만, OpenAI 스키마가 주류가 되길 바랍니다. 이런 과장된 용어는 필요 없습니다.

  19. hiimkeks HN

    제 추측으로는 이걸 "nool"로 읽으면 "bool"과 비슷하게 들리고, 모델이 베르누이 분포를 생성하니까 "Bernoulli"라는 이름에서 한 토막을 따온 것 같습니다.

  20. lr1970 HN

    다들 이진 선택을 왜 noul이라고 부르는 거죠?

    BerNOULli 분포에서 따온 겁니다 [0]

    [0] https://en.wikipedia.org/wiki/Bernoulli_distribution

    수정: 서식 고침

  21. keyle HN

    정말 잘 쓴 글입니다. AI 구루들이 하는 말을 제가 알아듣는 일은 드문데, 이 글은 사람이 사람을 위해 쓴 글이네요.

    기술적으로는 활용할 수 있는 사례가 많을 텐데, 어떤 아이디어가 있을지 의견을 들려주셨으면 합니다.

  22. mjb HN

    저자 중 한 명입니다. 감사합니다!

    사람이 쓴 글이냐는 부분에 대해 말씀드리면, 제 이름이 붙은 블로그 글은 개인 블로그든 회사 업무든 AI가 쓰지 않습니다( https://brooker.co.za/blog/2026/06/18/my-blog-and-ai.html ). 저는 AI를 많이 쓰는 사람이지만, 글쓰기는 사람이 하는 게 맞다고 생각합니다.

    이런 모델을 쓸 수 있는 방법은 아주 많습니다. 모델 라우팅이 요즘 떠오르는 대표적인 사례고요. 제가 특히 흥미를 느끼는 건 하이브리드 에이전트 워크플로입니다. AWS StepFunctions 같은 결정론적 워크플로와 최첨단 지능을 쓰는 완전한 에이전트 워크플로 사이의 간극을 메우는 겁니다.

    strands에 그런 기능을 더 내놓을 예정이고, 이 분야에서 혁신이 폭발적으로 나올 거라고 기대합니다.

  23. mattstir HN

    제가 생각하는 사용 사례는 비교적 단순한 홈 어시스턴트 앱입니다. 전구를 제어하거나 주방 스피커로 음악을 트는 것 같은 스마트홈 기능을 맡기는 거죠. "조명 밝기 30%로 맞춰줘" 같은 명령과 "오늘 날씨 어때" 같은 일반 질문을 구분해서, 후자는 저렴한 LLM으로 넘기는 것도 상상해 볼 수 있습니다. 전부 LLM 하나로 처리할 수도 있겠지만, 이런 결정 모델이 빠르다는 점이 마음에 듭니다.

  24. tmoreton HN

    직접 구현해 보셨어요? 이론상으로는 딱 맞는 사용 사례 같은데, 저는 Laya 모델로 실제로 해 봤다가 결과가 별로였거든요. 이 모델로 다시 해 보려고요.

  25. nryoo HN

    점심 메뉴 고르기..?

  26. miguelspizza HN

    좋은 모델입니다. 저는 크롬 확장 프로그램에서 기기 내 실행으로 돌리면서 이메일 같은 것을 걸러 내는 데 쓰고 있어요.

    크기, 성능, 속도의 균형이 딱 맞아서 즉석 대량 분류 작업에 두루 쓸 만합니다.

    브라우저에서 돌려 보고 싶은 분은 여기를 보세요: https://huggingface.co/alxnahas/strands-decider-2B-webgpu

  27. babelfish HN
  28. woadwarrior01 HN

    나온 지 2주쯤 된 Intern-Decision 모델 계열(0.8B, 2B, 4B)도 같은 Qwen3.5 베이스 모델 계열(다만 instruction-tuned 변형)에 포인터 헤드 아키텍처를 씁니다.

    https://huggingface.co/collections/internlm/intern-decision

  29. hrpnk HN

    Cloudflare의 clef는 llama.cpp에서 돌아가는데, strands CLI에 묶이게 되면 아쉽고 도입 속도도 느려질 겁니다.

    Qwen 위에 얹은 LoRA라서 llama.cpp로 돌릴 수 있을 것 같은데, PEFT/LoRA에서 GGUF로 변환하는 일을 사용자에게 맡겨 둔 건 아쉽네요. 아래 오류를 넘긴 분 계신가요?

        $ uv run --with transformers==5.19.0 convert_lora_to_gguf.py ~/Downloads/lora --dry-run --verbose
        [...]
          File "/Users/user/repos/llama.cpp/conversion/base.py", line 630, in map_tensor_name
        raise ValueError(f"Can not map tensor {name!r}")
        ValueError: Can not map tensor 'layers.0.linear_attn.in_proj_a.weight'
    
  30. mjb HN

    충분히 가능합니다. 다만 아직 저희가 하지는 않았습니다(커뮤니티의 훌륭한 분들이 v21의 ONNX 버전을 만들어 주기는 했습니다).

    깊이 들여다보지는 않았지만 llama.cpp를 수정하지 않고도 될 겁니다. 다만 LoRA만 변환해서는 안 됩니다. 포인터 헤드 전체와 제대로 처리해야 하는 커스텀 레이어가 있거든요(사실 LoRA는 대부분 베이스 모델이 포인터 헤드에 맞게 동작하도록 만드는 용도입니다).

Hacker News에서 보기 ↗