"이론적인" 비결정성을 완전히 닫힌 개별 입력-출력 쌍에서 해결하더라도 실제 두 가지 비결정성 문제, 즉 동일한 입력이 이전 맥락에 따라 다른 결과를 낸다는 문제와 약간 변형된 입력이 올바르게 변형된 결과를 내지 못하는 문제가 남아 있음. 이런 문제가 해결되지 않는 한, 닫힌 시스템에서의 비결정성은 사실 조회 테이블로도 충분한 상황을 제외하면 그다지 도움이 안 됨. 테스트하지 않은 입력에 대해 "정확한" 단위 테스트나 평가 세트로 무슨 증명을 하기는 어려움
"정확히 같은 입력인데도 다른 이전 맥락에 따라 결과가 달라지는" 상황은 사실 존재하지 않음. 이전 맥락 자체가 입력임. 만약 어떤 입력 프롬프트에서 항상 같은 결과가 나온다면, 맥락은 무시되고 있다고 볼 수 있음. 즉, 세션 내 상태와 무관하게 항상 비어있는 맥락에서 시작한다는 것과 같음. 몇몇 사람들이 원하는 것은,
의미가 같은 다양한 프롬프트 문장(예: "What is the capital of France"와 "What is France's capital")이 똑같은 답변을 내야 한다는 요구임
이전 맥락이 질문에 아무 상호작용을 하지 않을 때는 결과에 영향을 미치지 않았으면 좋겠다는 요구임. 예를 들면, 프롬프트 "what is 2 + 2"에 항상 같은 답변이 나와야 하고, 맥락에서 2 + 2 = 5라고 지정하지 않는 한 변하지 않아야 한다는 것임.
이런 요구는 LLM이라는 존재에 대해 오해하고 있다는 걸 보여줌
'이전 맥락'이 다른 결과를 만든다는 게 왜 문제임? 만약 맥락이 결과에 영향을 주지 않는다면, 맥락을 그냥 버려도 됨. 그런 동작을 굳이 원하는 이유가 뭐임? 실제로 도구라면 내 의도나 모드 전환(예, vim에서 insert 모드 전환 후 동작 변경)에 따라 다르게 반응하길 기대함. 지능 역시 그런 식으로 동작하길 바람. 맥락을 무시하는 게 오히려 극단적인 확증 편향에 더 가깝게 느껴짐
버그를 재현할 때 굉장히 유용함
"별 도움이 안 된다"고 말하는 지점까진 동의했었음. 아마 "문제를 완전히 해결해주진 않는다"는 의미로 말한 것 같음
확률적 시스템에서 왜 결정성에 그렇게 신경을 쓰는지 궁금함. 사용자의 입장에선 "How do I X?"라는 입력에 언제나 똑같은 결정론적 답을 내놓는다 한들, "how do i x?", "how do I x", "how do I X??" 등 의미가 같은 입력에 서로 전혀 다른 결과가 나온다면 별 의미 없는 일이 됨. LLM에서 진짜 필요한 건 의미적으로 같은 입력이면 항상 의미적으로 같은 출력을 보장하는 능력임. 이건 우리가 보통 알고리즘에서 말하는 결정성과는 완전히 다른 개념임
모든 LLM 기반 애플리케이션이 사용자가 즉흥적으로 채팅하는 인터페이스만 갖는 건 아님. 도구 호출을 평가 목적으로 10번 연속 하는 경우라든가, DSPy Optimizer 같은 도구링크로 프롬프트를 계속 테스트하는 경우처럼, 토큰 수준 입력까지 전적으로 내가 통제할 수 있다면 예측 불가성을 줄이는 게 중요함. 이런 환경에선, 토큰 레벨에서의 변동성을 제거해 입력 자체의 모호함만 제거할 수 있다면 시스템의 행동을 훨씬 신뢰할 수 있는 트리, 그래프 구조로 매핑할 수 있음
당신 말이 틀리진 않지만, 그렇다고 해서 이 정도의 결정성이 쓸모없다는 건 아님. 만약 똑같은 입력 토큰을 넣어도 항상 결과가 다르면, 동료들과 결과를 재현하며 공유하거나 LLM이 아주 드물고 예측 곤란한 출력을 내는 상황을 테스트(예, red teaming)하기 어려움
LLM 출력에 스테가노그래피로 정보를 심는 프로젝트를 하고 있음: innocuous 모델의 상위 10개 토큰 정도만 추출해서 사용하고, 주로 CPU 기반 8B 모델에서 테스트하기 때문에, 하드웨어 영향으로 토큰 순서가 달라질 걱정은 크지 않지만, 미세한 정밀도 손실로 선택지가 바뀌지 않도록 eventually guard 조건도 만들어 둘 생각임
AI 플랫폼 고객에게 매우 유용할 수 있음. 프롬프트를 temperature 0으로 여러 번 돌려서 결과가 항상 같은지 확인해서, AI 제공업체가 PRO 모델을 싼 다른 모델로 몰래 바꿔치기하고 있는지 검증할 수 있음
"버그" 재현 목적에선 반드시 필요함. 동일한 입력 스트링을 넣을 때 똑같이 잘못되거나 특이한 출력을 매번 재현할 수 있다면 디버깅이 훨씬 쉬워짐. 결과가 100번에 한 번씩 달라지면 훨씬 어려워짐
때로 비결정성의 원인은 구현의 세부사항임. 예를 들어, GPT-2 소스코드에선 GUI에서 temperature를 0으로 지정해도 실제론 0이 아닌 "epsilon"(아주 작은 수) 값이 들어감. 이는 division by zero(제로 나누기) 오류를 방지하기 위함이라 납득할 만함. 비결정성은 많은 애플리케이션에서 "쓸모없음"임. LDA 토픽 모델에서도 오래된 문제임. 특히 법률, 금융, 규제 분야에서는 결정론적이지 않은 방법을 쓰는 것이 불법일 수도 있음. 아니면 원치 않는(모든 화면 기록을 보관하여 나중에 무슨 일이 있었는지 하나하나 복구 가능하게 유지해야 하는) 추가 의무가 생길 수 있음
"다른 이와 함께 Thinking Machines에서 작업" 이야기가 나옴. 예전에 MIT AI Lab 앞에서 빨간 LED 큐브가 빛나던 그 기계를 직접 보던 시절이 그립다는 생각을 듦. Richard Feynman이 정말 멋진 일을 했고, 관련 글도 있음 Feynman and the Connection Machine. 미국에서 “THINKING MACHINES” 상표권은 Hillis가 아니라 그가 창업한 회사에 등록되었고 1998–1999년에 말소됨. 회사는 1994년에 파산했으며 자산은 Sun Microsystems(이후 Oracle) 등으로 넘어갔음. Amira Murati가 세운 Thinking Machines Lab Inc.가 2025년에 새로 “THINKING MACHINES” 상표 출원을 진행 중임
매번 저 회사 이름 볼 때마다 이 혼동을 하게 됨
최근 높은 퀄리티의 블로그 스타일 연구 토론이 정말 반가움. Anthropic이 이 문화를 이끌고 있고 점점 확산되는 추세라 기대가 큼. 과거 RL 연구 시기엔 OpenAI도 이런 방식이었음
자연어 자체가 모호함을 지님. 모호해야만 함. 여기서 시도하는 '원을 네모로 만들고 왜 그래야 하는지 설명해보려는' 접근 방식은 잘못됐다고 생각함. 이런 논의는 결국 언어나 랜덤성의 본질을 더 잘 받아들이고, QKV projection matrix 같은 미니 문법 하위 패턴 그 이상에서 언어를 해석하게 되는 토론으로 발전할 것임
맞는 말임. 다만 결정성은 모호함이 아님. 결정성이란 "정확히 이 입력에 정확히 이 출력을 보장해야 함"임. 같은 모델에 같은 질문을 하면 무조건 같은 답변이 나와야 한다고 기대함. 물론 문장만 살짝 바꾼 질문이라면 다소 다른 답변이 나오는 걸 충분히 이해함
회사 이름이 여전히 마음에 들지 않음. 왜 이런 작명이 반복되는지 의문임. 전설적인 조직의 성격이 신생 벤처에도 스며들길 바라는 맥락인지 모르겠음. 다음 스타트업 이름을 PARC로 정한다고 네 트워킹 혁신이 자동으로 이어질 일은 없지 않나 생각함
1994년에 사라진 “Thinking Machines” 회사 얘기하는 거 맞음? 좀 찾아봐야 알 수 있었고, 생각보다 유명하지 않아서 그런 의도는 아닌 듯. 그냥 멋지고 직관적인 이름이라고 생각함
이름 짓기만으로 마케팅이 공짜로 따라오니, 상표 제도의 탄생 이유와 같음
정말 흥미로운 내용임. 잘 모르는 사람들을 위해 말하면, 이 회사는 이전 OpenAI CTO Mira Murati가 시작한 곳임
Hacker News 의견
"이론적인" 비결정성을 완전히 닫힌 개별 입력-출력 쌍에서 해결하더라도 실제 두 가지 비결정성 문제, 즉 동일한 입력이 이전 맥락에 따라 다른 결과를 낸다는 문제와 약간 변형된 입력이 올바르게 변형된 결과를 내지 못하는 문제가 남아 있음. 이런 문제가 해결되지 않는 한, 닫힌 시스템에서의 비결정성은 사실 조회 테이블로도 충분한 상황을 제외하면 그다지 도움이 안 됨. 테스트하지 않은 입력에 대해 "정확한" 단위 테스트나 평가 세트로 무슨 증명을 하기는 어려움
"정확히 같은 입력인데도 다른 이전 맥락에 따라 결과가 달라지는" 상황은 사실 존재하지 않음. 이전 맥락 자체가 입력임. 만약 어떤 입력 프롬프트에서 항상 같은 결과가 나온다면, 맥락은 무시되고 있다고 볼 수 있음. 즉, 세션 내 상태와 무관하게 항상 비어있는 맥락에서 시작한다는 것과 같음. 몇몇 사람들이 원하는 것은,
'이전 맥락'이 다른 결과를 만든다는 게 왜 문제임? 만약 맥락이 결과에 영향을 주지 않는다면, 맥락을 그냥 버려도 됨. 그런 동작을 굳이 원하는 이유가 뭐임? 실제로 도구라면 내 의도나 모드 전환(예, vim에서 insert 모드 전환 후 동작 변경)에 따라 다르게 반응하길 기대함. 지능 역시 그런 식으로 동작하길 바람. 맥락을 무시하는 게 오히려 극단적인 확증 편향에 더 가깝게 느껴짐
버그를 재현할 때 굉장히 유용함
"별 도움이 안 된다"고 말하는 지점까진 동의했었음. 아마 "문제를 완전히 해결해주진 않는다"는 의미로 말한 것 같음
확률적 시스템에서 왜 결정성에 그렇게 신경을 쓰는지 궁금함. 사용자의 입장에선 "How do I X?"라는 입력에 언제나 똑같은 결정론적 답을 내놓는다 한들, "how do i x?", "how do I x", "how do I X??" 등 의미가 같은 입력에 서로 전혀 다른 결과가 나온다면 별 의미 없는 일이 됨. LLM에서 진짜 필요한 건 의미적으로 같은 입력이면 항상 의미적으로 같은 출력을 보장하는 능력임. 이건 우리가 보통 알고리즘에서 말하는 결정성과는 완전히 다른 개념임
모든 LLM 기반 애플리케이션이 사용자가 즉흥적으로 채팅하는 인터페이스만 갖는 건 아님. 도구 호출을 평가 목적으로 10번 연속 하는 경우라든가, DSPy Optimizer 같은 도구링크로 프롬프트를 계속 테스트하는 경우처럼, 토큰 수준 입력까지 전적으로 내가 통제할 수 있다면 예측 불가성을 줄이는 게 중요함. 이런 환경에선, 토큰 레벨에서의 변동성을 제거해 입력 자체의 모호함만 제거할 수 있다면 시스템의 행동을 훨씬 신뢰할 수 있는 트리, 그래프 구조로 매핑할 수 있음
당신 말이 틀리진 않지만, 그렇다고 해서 이 정도의 결정성이 쓸모없다는 건 아님. 만약 똑같은 입력 토큰을 넣어도 항상 결과가 다르면, 동료들과 결과를 재현하며 공유하거나 LLM이 아주 드물고 예측 곤란한 출력을 내는 상황을 테스트(예, red teaming)하기 어려움
LLM 출력에 스테가노그래피로 정보를 심는 프로젝트를 하고 있음: innocuous 모델의 상위 10개 토큰 정도만 추출해서 사용하고, 주로 CPU 기반 8B 모델에서 테스트하기 때문에, 하드웨어 영향으로 토큰 순서가 달라질 걱정은 크지 않지만, 미세한 정밀도 손실로 선택지가 바뀌지 않도록 eventually guard 조건도 만들어 둘 생각임
AI 플랫폼 고객에게 매우 유용할 수 있음. 프롬프트를 temperature 0으로 여러 번 돌려서 결과가 항상 같은지 확인해서, AI 제공업체가 PRO 모델을 싼 다른 모델로 몰래 바꿔치기하고 있는지 검증할 수 있음
"버그" 재현 목적에선 반드시 필요함. 동일한 입력 스트링을 넣을 때 똑같이 잘못되거나 특이한 출력을 매번 재현할 수 있다면 디버깅이 훨씬 쉬워짐. 결과가 100번에 한 번씩 달라지면 훨씬 어려워짐
(JAX/XLA 작업 경험) 이건 꽤 잘 알려진 내용임. 나 역시 여러 번 이런 현상(배치 단위 변동성)에 부딪혔고 아래 이슈에서 설명을 들음: penzai issue #82, jax issue comment
때로 비결정성의 원인은 구현의 세부사항임. 예를 들어, GPT-2 소스코드에선 GUI에서 temperature를 0으로 지정해도 실제론 0이 아닌 "epsilon"(아주 작은 수) 값이 들어감. 이는 division by zero(제로 나누기) 오류를 방지하기 위함이라 납득할 만함. 비결정성은 많은 애플리케이션에서 "쓸모없음"임. LDA 토픽 모델에서도 오래된 문제임. 특히 법률, 금융, 규제 분야에서는 결정론적이지 않은 방법을 쓰는 것이 불법일 수도 있음. 아니면 원치 않는(모든 화면 기록을 보관하여 나중에 무슨 일이 있었는지 하나하나 복구 가능하게 유지해야 하는) 추가 의무가 생길 수 있음
"다른 이와 함께 Thinking Machines에서 작업" 이야기가 나옴. 예전에 MIT AI Lab 앞에서 빨간 LED 큐브가 빛나던 그 기계를 직접 보던 시절이 그립다는 생각을 듦. Richard Feynman이 정말 멋진 일을 했고, 관련 글도 있음 Feynman and the Connection Machine. 미국에서 “THINKING MACHINES” 상표권은 Hillis가 아니라 그가 창업한 회사에 등록되었고 1998–1999년에 말소됨. 회사는 1994년에 파산했으며 자산은 Sun Microsystems(이후 Oracle) 등으로 넘어갔음. Amira Murati가 세운 Thinking Machines Lab Inc.가 2025년에 새로 “THINKING MACHINES” 상표 출원을 진행 중임
최근 높은 퀄리티의 블로그 스타일 연구 토론이 정말 반가움. Anthropic이 이 문화를 이끌고 있고 점점 확산되는 추세라 기대가 큼. 과거 RL 연구 시기엔 OpenAI도 이런 방식이었음
자연어 자체가 모호함을 지님. 모호해야만 함. 여기서 시도하는 '원을 네모로 만들고 왜 그래야 하는지 설명해보려는' 접근 방식은 잘못됐다고 생각함. 이런 논의는 결국 언어나 랜덤성의 본질을 더 잘 받아들이고, QKV projection matrix 같은 미니 문법 하위 패턴 그 이상에서 언어를 해석하게 되는 토론으로 발전할 것임
회사 이름이 여전히 마음에 들지 않음. 왜 이런 작명이 반복되는지 의문임. 전설적인 조직의 성격이 신생 벤처에도 스며들길 바라는 맥락인지 모르겠음. 다음 스타트업 이름을 PARC로 정한다고 네 트워킹 혁신이 자동으로 이어질 일은 없지 않나 생각함
1994년에 사라진 “Thinking Machines” 회사 얘기하는 거 맞음? 좀 찾아봐야 알 수 있었고, 생각보다 유명하지 않아서 그런 의도는 아닌 듯. 그냥 멋지고 직관적인 이름이라고 생각함
이름 짓기만으로 마케팅이 공짜로 따라오니, 상표 제도의 탄생 이유와 같음
정말 흥미로운 내용임. 잘 모르는 사람들을 위해 말하면, 이 회사는 이전 OpenAI CTO Mira Murati가 시작한 곳임