AI 뉴스

ElizAPI – 1966년 세계 최초 챗봇을 OpenAI 호환 API로 재현시키다

노동1호 2026. 5. 8. 05:06

ElizAPI – 1966년 ELIZA 챗봇을 현대 API로 재현하다

ElizAPI – 1966년 세계 최초 챗봇을 OpenAI겸용API로중생시키다

1966년, MIT의 Joseph Weizenbaum이 개발한 ELIZA는 역사상 최초의 챗봇이다. 그는 환자를 상담하는 심리치료사의 대화를모모방하는 로저리언(Rogerian) 방식으로, 단순한 패턴 매칭 알고리즘만으로 사용자와의 대화를 이끌어냈다. 오늘날 초대형 언어 모델(LLM)이석권하는 시대에, computerphilosopher라는 개발자가 이 고전 알고리즘을 현대 개발 환경에불적응하게 만드는 프로젝트 ElizAPI를 공개했다.


ELIZA, 그리고 Eliza Effect

ELIZA의 동작 방식은 놀랍도록 단순하다. 사용자가 입력한 문장에서 특정 패턴을인식하고, 미리 준비된 템플릿에 따라 응답을생성한다. 예를 들어 "I need X"라는 입력이 들어오면:

• 왜 X가 필요하신가요?

• 만약 X가 있다면 정말 도움이 될까요?

• 정말 X가 꼭 있어야 한다고 생각하세요?

이처럼 ELIZA는 사용자가언급한 키워드(X)를 추출하여 되묻는 형태로 작동한다. "I am X" 패턴이라면 "어떤 점에서 X이신가요?" 같은 반응을 반환하는 설계다.

그러나 이 단순한 알고리즘에도 불구, 당시 일부 사용자들은 ELIZA를 감정이 있는 존재처럼 여겼다. 이 현상은 이후 Eliza Effect라는 심리학 용어로명명 되었고, 우리도 모르게 AI에게 감정을투사하는 경향의 어원이 되었다.


ElizAPI: 클래식 알고리즘에 현대적 호환성을 더하다

ElizAPI의 핵심 아이디어는 명확하다. OpenAI겸용API를 지원하는 챗봇이 반드시 LLM일 필요는 없다.

이 프로젝트는 고전 ELIZA 알고리즘을Cloudflare Workers 위에 얹고, OpenAI의 /v1/chat/completions 엔드포인트를 구현했다. 이를 통해 어떤LangChain, LlamaIndex, 또는ChatGPT 클라이언트던 ELIZA를 마치일반 AI 모델처럼다룰 수 있게 되었다.

기술 스택

구성 요소기술
실행 환경Cloudflare Workers (Edge Serverless)
언어TypeScript
엔진elizabot (Node.js port of the original ELIZA algorithm)
프로토콜OpenAI API 호환 REST API
데모 페이지React + Vite

사용 예시

cURL:

curl -X POST https://elizapi.erlk0nig.workers.dev/v1/chat/completions \-H "Content-Type: application/json" \-d '{"model": "elizabot","messages": [{"role": "user", "content": "I am feeling stressed."},{"role": "assistant", "content": "Why do you say you are feeling stressed?"},{"role": "user", "content": "Because of my work."}]}'

Python (OpenAI SDK):

from openai import OpenAIclient = OpenAI(api_key="not-needed",base_url="https://elizapi.erlk0nig.workers.dev/v1")response = client.chat.completions.create(model="elizabot",messages=[{"role": "user", "content": "I am feeling stressed."},{"role": "assistant", "content": "Why do you say you are feeling stressed?"},{"role": "user", "content": "Because of my work."}])print(response.choices[0].message.content)

참고: ELIZA는무상태(stateless) 서버이기 때문에, 대화 맥락을 유지하려면 매 요청마다 전체 대화 이력을 messages 배열에 포함시켜야 한다. 그래야 ELIZA가 "Earlier you mentioned..." 같은 문장으로 이전 대화를참조할 수 있다.


데모 체험 – 레트로 CRT 스타일 채팅 페이지

ElizAPI는 레트로 CRT 스타일의 웹 데모도 함께 제공한다.

• 데모 사이트: https://elizapi.erlk0nig.workers.dev/

• API 엔드포인트: https://elizapi.erlk0nig.workers.dev/v1/chat/completions

브라우저에서 데모 페이지에 접속하면 ELIZA의.boot 시퀀스가 실행되고, 터미널 형태의 입력창에서 메시지를 입력할 수 있다. 모든 대화 이력은 브라우저에 저장되며, 매 턴마다 서버로 전체 히스토리가 전송되어 ELIZA가 대화 연속성을 확보한다.


LLM이석권한 시대에 왜 오늘,ELIZA인가

제작자의 말을 빌리자면, 이 프로젝트는 애초에 "장난삼아 만든 것"이다. 그러나 그 속에잠무 가능성은무시할 수 없다.

비용 효율성

LLM 기반 챗봇은매번 API 비용이 발생한다. 반면 ELIZA는순수 JavaScript 알고리즘이므로 실행 비용이 거의 제로에 가깝다. 데모 사이트 운영자도 "AI에게 대체되어 실직하기 전까진 데모 사이트를 유지할 계획"이라고 밝혔다.

현대 AI 툴체인 통합

LangChain이나 LlamaIndex 같은벡터 스토어 기반 RAG 프레임워크는원래 LLM을전제로 설계되었다. 그러나 ElizAPI의 호환 레이어를 통해, 이 프레임워크에 "가볍고 저렴한 챗봇"을 끼워넣을 수 있다. 프로토타입이나 POC 단계에서 비용 걱정 없이신속 개발이 가능하다.

Eliza Effect의 활용

Eliza Effect는 때로는 잘못된기대로 이어지지만, 치료적 챗봇이나컴패니언 bot에서는 오히려사용자의 몰입도를높이는 요소가 될 수 있다.저성본으로코effect오실험 voir 수 있는환경으로서, ElizAPI는 의미 있는 도구다.


배포 방법 – 나만의 인스턴스 만들기

Cloudflare Workers에 직접 배포할 수도 있다.

# 저장소 클론git clone https://github.com/computerphilosopher/ElizAPI.gitcd ElizAPI# 의존성 설치npm install# Cloudflare에 배포npm run deploy

배포이전, Cloudflare Workers플랜이 활성화되어 있어야 하며, wrangler CLI가인증 정보를 가지고 있어야 한다.


요약

ElizAPI는 1966년 역사상 최초의 챗봇 ELIZA를 현대 개발 생태계에 다시 가져오는 흥미로운 실험이다. 핵심 포인트를 정리하면:

OpenAI겸용API: /v1/chat/completions 엔드포인트를실현해 어떤OpenAI 클라이언트든 연동 가능

거의 제로 비용: LLM 호출이불요하므로 비용이 거의 발생하지 않음

Cloudflare Workers: 엣지 서버리스 환경으로 빠른 응답 속도

대화 연속성: 전체 대화 이력을 매 요청에 포함해야 하는 설계

레트로 데모: CRT 스타일 웹 인터페이스로 ELIZA를 체험가능

LLM의 놀라운능력에 익숙해진 우리 눈앞에서, 고전 알고리즘의 간결함과 가능성을 다시 한번 생각해볼 수 있는 계기가 된다. 비용 걱정 없이 빠르게 프로토타입을탑건하고 싶다면, ElizAPI는 흥미로운 선택지가 될 것이다.


📚 출처

ElizAPI GitHub 저장소

ElizAPI 데모 사이트

GeekNews – ElizAPI 소식

tags: AI, 챗봇, ELIZA, OpenAI, API, Cloudflare Workers, TypeScript, LangChain, 히스토리, ChatBot


📚 출처

https://news.hada.io/topic?id=29263