Python 개발자를 위한 Jev
요약
Jev는 좁은 결정(narrow decisions)에 특화된 새로운 종류의 AI 모델입니다. 이 모델은 LLM 기반임에도 불구하고, 분류기처럼 작동하여 구조화된 JSON을 반환하며 빠르고 저렴합니다. Vercel Python 팀은 개발자들이 Jev를 쉽게 사용할 수 있도록 Python용 AI SDK를 업데이트했습니다.
핵심 포인트
- Jev는 좁고 구체적인 결정(narrow decisions)에 최적화된 모델입니다.
- LLM의 장점을 활용하면서도 분류기처럼 구조화된 JSON 출력을 보장합니다.
- Python AI SDK가 업데이트되어 Jev와 직접 연결되는 새로운 실험적 API를 제공합니다.
- Jev는 텍스트 생성 대신 선택지 질문, 상태 평가 등 구조화된 답변을 반환합니다.
Jev에 대해 듣지 않는 것은 불가능할 정도입니다. 마치 모두가 이 Jev를 어떤 식으로든 만지고 있는 것 같습니다. 사용하는 것부터 거래 결정 (make trading decisions)을 하거나, UIs를 생성하는 것 (뭐가 잘못될 수 있을까요?) (어쩌면 우리가 무언가를 발견한 걸지도!)
이것은 새로운 종류의 AI 모델입니다. 데이터를 입력하고 여러 선택지 질문 세트를 던지면, Jev는 그 답변과 각 답변에 대한 자신감을 응답합니다. 다른 어떤 모델과 마찬가지로, Jev도 실수를 할 수 있고 실제로 할 것입니다. 하지만 빠르게 실수할 겁니다. Jev
핵심은 이겁니다: Jev는 좁은 결정(narrow decisions)을 내리는 데 맞춰져 있습니다. 이것이 여러분의 사용 사례에 정확한지는 직접 테스트해 봐야 할 문제입니다.enough
Vercel의 Python 팀의 임무는 몇 가지 다른 것들 중 하나로, Python 개발자들이 Jev를 쉽게 만질 수 있도록 만드는 것입니다. 그래서 Python용 AI SDK의 최신 버전을 환영합니다.
새로운 실험적 API를 사용하려면 다음 명령어로 설치하고, 이는 Jev의 신경계에 직접 연결됩니다. 그런 다음 빈 문자열을 만들고, set을 설정한 후, 이 전체 예제를 시도해 보세요:
uv add ai
evaluate()
AI_GATEWAY_API_KEY AI 게이트웨이 키
이제, Jev가 무엇인지 그리고 몇 가지 예제를 통해 어떻게 여러분을 위해 작동하게 할 수 있는지 설명하고 싶습니다. 좋은 예제 하나와 멍청한 예제 하나를 던져주고, Jev에게 어느 것이 어느 것인지 물어보세요. 재미있게 해봅시다!
Jev는 범용 분류기(universal classifier)입니다.
분류기는 아주 오래된 머신러닝의 고전적인 원시 요소입니다. 스팸 필터를 만들고 싶다고 가정해 봅시다. 스팸 또는 스팸이 아닌 것으로 레이블링된 수많은 이메일로 분류기를 훈련시키면, 새로 들어오는 이메일이 스팸처럼 보이는지 알려주는 것을 학습합니다.
문제는 모든 새로운 분류 작업에 대해 새로운 데이터를 수집하고 레이블을 지정한 다음, 해당 작업을 위해 가중치를 조정하도록 새 분류기를 훈련해야 한다는 것입니다. 하지만 가중치를 가진 다른 것은 무엇인지 아십니까? 대규모 언어 모델(LLM)입니다! 그래서 Jev 팀은 LLM을 특정 도메인에 대해 훈련할 필요가 없는 분류기로 변환하는 방법을 알아냈습니다. 왜냐하면 이미 광범위한 인간 지식의 일부로 훈련되었기 때문입니다.
Jev는 LLM으로 시작했지만, 여전히 분류기처럼 작동합니다. 저렴하고 빠르며, 텍스트를 생성하는 대신 구조화된 JSON을 반환합니다. 그 답변은 질문에서 정의한 유형과 선택 사항을 준수합니다.
Jev는 더 간단할 수 없으며, 그렇게 유지하기 위해 Python AI SDK에 거의 그대로 구현했습니다.공식 API
거기에는 단 하나의 함수와 몇 가지 지원 타입만 있습니다. 이 함수는 모델(단순 문자열 또는 복잡한 JSON일 수 있음)과 질문 매핑을 받습니다. 질문은 (하나의 답변 선택), (정의한 척도에 따라 상태 평가), 또는 (진술이 참일 확률 추정) 중 하나의 인스턴스입니다. evaluate()``ChoiceQuestion``ScoreQuestion``NoulQuestionstate
완전한 API 참조는 . 에 문의하십시오. 이제 우리는 Jev가 무엇인지 그리고 어떻게 사용하는지에 대해 좋은 아이디어를 갖게 되었습니다. 그것으로 무엇을 만들 수 있는지 볼 시간입니다
이것은 Jev를 분류기처럼 사용한 합리적인 예시입니다.
약 1년 전, 저는 Python REPL 에이전트를 에이전틱하게 만들 아이디어가 있었습니다. 저는 그것이 훌륭한 사용자 경험(UX)을 갖기를 원했고, 제가 채팅과 코드를 명시적으로 전환하지 않아도 REPL이 제가 영어를 입력하는지 파이썬을 입력하는지 알려준다면 매우 멋질 것이라고 생각했습니다.
저는 분류기가 필요했기 때문에, 무작위로 선택된 파이썬 코드와 영어 텍스트에 대해 직접 두 일 동안 저만의 것을 훈련시키는 데 시간을 보냈습니다.
많은 노력과 어설픈 Opus 4.1 토큰을 사용한 끝에, 저는 Python 대 English를 위한 신뢰할 수 있는 분류기를 만드는 데는 적합하지 않다고 결론지었습니다. UI가 불안정하게 느껴졌습니다. 타이핑하면 Python으로 하이라이트되고, 영어로 전환되었다가 다시 Python으로 바뀌었습니다. 매우 간단해 보이는 문제가 실제로는 정말 어려운 문제였습니다. if i``if i i``if i is
Jev가 어떻게 하는지 봅시다.
이것들은 "이것이 영어인가요, 아니면 Python 코드인가요?"라는 질문에 대한 Jev의 실제 응답 기록입니다. 그 뒤에 있는 코드는 특별히 흥미롭지는 않습니다. 기본적으로 이 게시물의 시작 코드 스니펫에 다른 질문을 붙인 것일 뿐입니다.
더 흥미로운 것은 Jev가 제가 가진 REPL 문제를 해결할 수 있는지 여부입니다. 그리고 그것은 제가 직접 만든 분류기보다 훨씬 잘 작동하는 것처럼 보이지만, 여전히 빈틈이 있습니다. 예를 들어, 저에게는 명백히 부분적으로 입력된 Python 표현식인데도 Jev에게는 영어처럼 보입니다. `""what's" + " up``
Jev를 LLM처럼 텍스트를 생성하도록 회귀(regress)시켜 보는 것은 어떨까요? Jev는 글을 쓸 수 없기 때문에, 그것이 타이핑하게 하는 한 가지 방법은 문자별로 진행하게 하는 것입니다. 각 단계에서, 그것은 문자, 구두점, 공백의 집합에서 다음 문자를 선택합니다. 영어 단어들의 어휘집에서 한 번에 하나의 단어를 고르는 방식일 수도 있습니다.Another wayN
그것을 보자마자, 저는 Jev가 Python 코드를 작성하는 능력이 얼마나 좋은지 테스트해야 한다는 것을 즉시 알았습니다.
저의 첫 번째 시도는 "문자 + Python 키워드 + 공백" 방식을 사용했지만, 저는 Jev가 그런 방식으로 구문을 작성하기가 거의 불가능하다는 것을 빠르게 깨달았습니다. 합리적인 무언가를 얻을 수 있는 유일한 방법은 대신 프로그램의 추상 구문 트리(AST)를 생성하도록 하는 것이었습니다. if
아이디어:
이 접근 방식을 사용하여 Jev가 구문적으로 유효하지만 (여전히 대부분 틀린) Python 코드를 생성하도록 만들었습니다. 하지만 보시다시피, 분류기(classifier)를 LLM의 역할을 수행하게 하는 것은 상당히 어렵습니다. 소스 코드는 더 잘 할 수 있다고 생각하시면 여기에서 확인하실 수 있습니다. GitHub
두 실험 모두 제가 바라던 대로 작동하지는 않았지만, 저는 여전히 Jev에 대해 기대가 큽니다. 우리는 이 새로운 모델 클래스가 무엇을 할 수 있는지 탐색하기 시작했을 뿐입니다!
지금 바로 AI SDK for Python으로 사용해 보고 여러분이 무엇을 만들었는지 알려주세요. 필요한 것은 AI Gateway key와 .env 파일뿐입니다. 코딩 에이전트를 위한 복사/붙여넣기 준비된 프롬프트는 다음과 같습니다: uv add ai
Jev ELI5
API
예제 1: Python인가, 영어인가?
예제 2: Jev가 Python 코드를 작성합니다
Jev 사용해 보기
-
사용자 프롬프트를 가져와 LLM(이 경우 GPT-5.6)을 사용하여 이를 Jev를 위한 구체적인 일련의 지침으로 확장합니다. 상세한 '계획' 없이는 Jev가 기본적인 작업조차 구현하는 데 어려움을 겪는다는 것을 알게 되었습니다.
-
Jev가 일련의 선택을 통해 Python AST(추상 구문 트리)를 구축하도록 합니다. 각 단계마다 현재 프로그램, 채워지고 있는 필드를 표시하고, 함수 호출, 산술 연산 또는 변수와 같은 가능한 다음 노드들을 제시합니다. 각 옵션에는 생성될 코드 미리보기가 함께 제공됩니다.
-
각 선택을 트리에 적용하고 Python으로 다시 렌더링합니다. 호스트 코드가 구두점과 들여쓰기를 처리하며, Jev가 프로그램의 전체 구조와 내용을 결정합니다. Jev가 트리를 완성할 때까지 이 과정을 반복합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Vercel AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기