옵션
뉴스
Langchain, OpenAI, Streamlit을 사용하여 나만의 AI 텍스트 요약기 구축하기

Langchain, OpenAI, Streamlit을 사용하여 나만의 AI 텍스트 요약기 구축하기

2025년 12월 9일
175

오늘날 빠르게 진화하는 디지털 환경에서 방대한 텍스트를 신속하고 효율적으로 요약하는 능력은 매우 귀중합니다. 본 가이드는 OpenAI, Langchain, Streamlit 같은 최신 기술을 활용해 직접 텍스트 요약 도구를 만드는 방법을 안내합니다. 개발자, 학생, 비즈니스 전문가 모두에게 이 도구는 업무 효율을 높이고 서면 정보에 대한 이해를 심화하는 데 도움이 될 것입니다.

핵심 포인트

OpenAI, Langchain, Streamlit을 활용한 텍스트 요약 애플리케이션 개발

언어 모델을 활용한 강력한 요약 기능을 위해 GPT 3.5 활용하기.

직관적이고 접근성 높은 웹 인터페이스를 구축하기 위해 Streamlit 사용.

요약 워크플로우 개선을 위해 Langchain의 커뮤니티 도구를 통합합니다.

텍스트를 세그먼트로 분할하는 것이 AI 모델 처리에 필수적인 이유를 학습합니다.

손쉬운 접근 및 공유를 위해 Streamlit Community Cloud에 최종 애플리케이션을 배포합니다.

보안을 강화하기 위해 사용 후 API 키를 자동으로 삭제하는 기능을 통합하세요.

텍스트 요약 앱 개발

기술 스택 이해

유능한 텍스트 요약 앱을 구축하려면 기술 스택에 대한 탄탄한 이해가 필수적입니다. 각 구성 요소를 자세히 살펴보겠습니다:

  • Streamlit: Streamlit은 웹 인터페이스의 기반 역할을 하며, Python으로 대화형 애플리케이션을 구축할 수 있는 간단하면서도 유연한 방법을 제공합니다. 사용자 친화적인 기능으로 신속한 프로토타이핑과 배포를 지원합니다.
  • Langchain: Langchain은 대규모 언어 모델(LLM)을 활용한 애플리케이션 개발을 간소화하는 프레임워크입니다. 문서 작업, 텍스트 분할, 요약 수행을 위한 모듈을 포함합니다.
  • OpenAI: OpenAI는 제공된 텍스트를 평가하고 간결한 요약문을 생성하는 LLM(특히 GPT 3.5)을 제공합니다.
  • Tiktoken: Tiktoken은 OpenAI 모델이 효율적으로 사용할 수 있도록 텍스트를 토큰화하여 LLM이 쉽게 처리할 수 있는 작은 조각으로 분할합니다.

이러한 기술을 통합함으로써 최소한의 코딩 노력으로 안정적이고 사용하기 쉬운 텍스트 요약 도구를 구축할 수 있습니다.

텍스트 요약 과정

텍스트 요약 프로세스를 단계별로 설명하면 다음과 같습니다:

  1. 입력 텍스트: 사용자가 요약하고자 하는 텍스트를 제공합니다. 문서, 기사 또는 기타 서면 콘텐츠일 수 있습니다.
  2. 문자 텍스트 분할기: 입력 텍스트는 Langchain의 CharacterTextSplitter. 이는 텍스트를 효과적으로 관리하기 위한 핵심 단계입니다. 대량의 텍스트는 AI 모델에 부담을 줄 수 있으므로 분할을 통해 원활한 처리를 보장합니다.
  3. 청크화: 텍스트 분할기는 입력 텍스트를 관리 가능한 청크로 분할하며, 문맥 유지를 위해 문자 경계를 보존합니다.
  4. 문서 생성: 각 텍스트 청크는 Langchain의 요약 기능과 완벽하게 연동되는 Langchain 객체로 변환됩니다. Document 객체로 변환되며, 이는 Langchain의 요약 기능과 원활하게 연동됩니다.
  5. LLM 상호작용: load_summarize_chain 함수는 OpenAI LLM을 활용하여 각 문서의 간결한 요약본을 생성합니다. 이 함수는 언어 모델과의 상호작용을 단순화합니다.
  6. 요약된 텍스트: 최종 결과는 핵심 세부 사항을 간결한 형태로 유지한 원본 텍스트의 축약본입니다. LLM의 기능을 활용하여 텍스트를 간결하면서도 유익한 요약으로 변환합니다.

AI 모델에 청크화가 중요한 이유는 무엇인가요?

청킹은 AI 모델이 정보를 더 작고 다루기 쉬운 조각으로 처리할 수 있게 하므로 중요한 단계입니다.

이 방법은 텍스트 요약의 인지적·계산적 부담을 줄여줍니다. AI 모델은 작고 집중된 섹션을 처리할 때 더 효율적으로 작동하며, 이는 종종 성능과 정확도 향상으로 이어집니다. 긴 텍스트를 소화 가능한 부분으로 분할하는 것은 모델이 맥락을 유지하고 각 세그먼트 내에서 가장 관련성 높은 정보에 집중하는 데도 도움이 됩니다.

다음 표는 LLM이 더 정확하게 처리하기 위해 텍스트 분할이 필요한 이유를 설명합니다:

코드 구현 세부사항

라이브러리 임포트

앱 개발의 첫 단계는 필요한 라이브러리(Streamlit, Langchain, OpenAI, Tiktoken)를 임포트하는 것입니다.

수입 구문은 다음과 같습니다:

import streamlit as stfrom langchain.docstore.document import Documentfrom langchain.text_splitter import CharacterTextSplitterfrom langchain.chains.summarize import load_summarize_chainfrom langchain.llms import OpenAI

generate_response 함수 생성

애플리케이션의 핵심은 generate_response 함수입니다. 이 함수는 사용자의 입력 텍스트를 받아 요약 파이프라인을 관리합니다. OpenAI 모델을 초기화하고, 입력을 분할하며, 문서 객체를 생성하고, load_summarize_chain 를 호출하여 최종 요약문을 생성합니다.

코드는 다음과 같습니다:

def generate_response(txt):llm = OpenAI(temperature=0.7, openai_api_key=openai_api_key)text_splitter = CharacterTextSplitter(chunk_size=1000, chunk_overlap=0)texts = text_splitter.split_text(txt)docs = [Document(page_content=t) for t in texts]chain = load_summarize_chain(llm, chain_type="map_reduce", verbose=False)output_summary = chain.run(docs)return output_summary

  1. LLM 인스턴스화: 선택한 온도(temperature)와 사용자의 API 키로 OpenAI 언어 모델을 초기화합니다. 온도는 출력의 창의성 수준에 영향을 미칩니다.
  2. 텍스트 분할: 입력 텍스트를 CharacterTextSplitter문단 분할: 입력 텍스트를 문단 분할: 입력 텍스트를
  3. 문서 생성: 각 텍스트 섹션을 Document 객체로 변환됩니다. 이는 Langchain의 표준 입력 유형입니다.
  4. 요약 체인 로드: load_summarize_chain 함수는 언어 모델과 선호하는 요약 방법에 기반하여 구성된 요약 체인을 생성합니다.
  5. 체인 실행: 요약 체인은 run 메서드를 통해 실행되며, 문서를 처리하여 요약본을 생성합니다.
  6. 출력 반환: 요약된 텍스트가 함수의 결과로 반환됩니다.

Streamlit 웹 인터페이스 구축

Streamlit을 사용하면 웹 인터페이스를 쉽게 구축할 수 있습니다. 인터페이스에는 다음 구성 요소가 포함됩니다:

  • 제목 설정을 위한 페이지 구성 요소.
  • 사용자가 요약할 텍스트를 입력할 수 있는 텍스트 영역.
  • 사용자의 OpenAI API 키를 안전하게 수신하는 양식.
  • 요약 프로세스를 실행하는 제출 버튼.
  • 요약된 결과를 표시하는 결과 영역.

st.set_page_config(page_title="텍스트 요약 앱")st.title("Text Summarization App")text_input = st.text_area("Enter your text here:", height=200)with st.form('myform', clear_on_submit=True):openai_api_key = st.text_input('OpenAI API Key', type = 'password', disabled=not(openai_api_key_startwith_check))submitted = st.form_submit_button('Submit')if submitted and openai_api_key:with st.spinner('Calculating...'):raw_response = generate_response(text_input)try:st.info(raw_response)except Exception as e:st.error(e)st.subheader("How to get an OpenAI API key:")st.markdown("To use this app, you will need an OpenAI API Key. You can create a secret keyhere: ")st.markdown("[OpenAI API Keys](https://platform.openai.com/api-keys)")

텍스트 요약 앱 사용 방법

텍스트 요약 단계별 가이드

텍스트 요약 앱 사용법은 간단하며 몇 단계만 거치면 됩니다:

  1. 텍스트 입력: 요약할 텍스트를 복사하여 텍스트 입력 영역에 붙여넣으세요. 책 발췌문, 뉴스 기사, 상세한 이메일 등이 될 수 있습니다.
  2. OpenAI API 키 입력: OpenAI 언어 모델에 대한 요청을 인증하기 위해 OpenAI API 키를 제공하세요.

    보안을 위해 요청 처리 후 입력란의 API 키는 자동으로 삭제됩니다.

  3. 제출: 요약 작업을 시작하려면 제출 버튼을 클릭하세요.
  4. 요약된 텍스트 보기: 처리 완료 후 앱이 원본 텍스트의 명확하고 간결한 요약본을 표시합니다.

장점과 단점

장점

정보를 읽고 이해하기 쉽게 만듭니다.

정제된 콘텐츠 제공으로 정신적 노력을 줄여줍니다.

빠른 요약으로 업무 프로세스를 가속화합니다.

복잡하거나 긴 텍스트에 대한 이해도를 높입니다.

단점

OpenAI API 키 보유 및 서비스 접근이 필요합니다.

요약 과정에서 발생할 수 있는 부정확성 또는 미묘한 세부사항의 손실.

요약 모델 맞춤 설정 옵션이 제한적입니다.

보안을 유지하기 위해 각 세션 후 API 키를 삭제해야 합니다.

자주 묻는 질문

텍스트 요약이란 무엇입니까?

텍스트 요약은 긴 텍스트를 가장 중요한 정보를 그대로 유지하면서 짧게 요약하는 작업입니다.

텍스트 요약에서 청크 분할이 중요한 이유는 무엇입니까?

청크화는 AI 모델이 대량의 텍스트를 더 효과적으로 처리할 수 있도록 작은 단위로 분할하여 정확도를 높이고 처리 요구량을 낮추는 데 도움이 됩니다.

API 키는 보안을 어떻게 향상시키나요?

사용 후 API 키를 지우면 민감한 인증 정보가 저장되거나 오용되는 것을 방지할 수 있습니다.

GitHub 저장소로 무엇을 할 수 있나요?

제공된 지침에 따라 저장소를 복제하고, OpenAI API 키를 추가한 후 원하는 콘텐츠의 요약 작업을 시작하세요.

프로세스 완료까지 얼마나 걸리나요?

설정부터 요약 생성까지 전체 프로세스는 일반적으로 10분 미만이 소요됩니다.

관련 질문

OpenAI 이외의 다른 언어 모델도 사용할 수 있나요?

예, 텍스트 요약 앱은 다른 언어 모델과 함께 작동하도록 조정할 수 있습니다. 대체 모델의 API에 연결하고 필요에 따라 텍스트 처리 단계를 조정하기 위해 코드를 업데이트해야 합니다. 모델마다 고유한 입력 요구 사항이나 성능 특성이 있을 수 있다는 점을 유의하십시오.

관련 기사
리눅스 재단에 6대 기술 거대기업이 1250만 달러를 지원해 AI 취약성 소음 문제 해결에 나서다 리눅스 재단에 6대 기술 거대기업이 1250만 달러를 지원해 AI 취약성 소음 문제 해결에 나서다 AI 자동화 도구가 생성한 저품질 보안 보고서의 홍수를 처리하기 위해, 앤트로픽(Anthropic), 아마존(AWS), 깃허브(GitHub), 구글(Google), 마이크로소프트(Microsoft), 오픈AI(OpenAI) 등 6대 주요 기술 기업은 리눅스 재단(Linux Foundation) 이니셔티브에 총 1,250만 달러의 자금을 공동으로 기부했습니다. 이 투자는 오픈 소스 소프트웨어(FOSS) 유지 관리자가 수동 선별의 부담에서 벗어나
[[IMG_BASE64_PLACEHOLDER]] 머스크, 오픈AI를 자녀들에게 넘길 가능성 고려… 알트만 증언 [[IMG_BASE64_PLACEHOLDER]] 머스크, 오픈AI를 자녀들에게 넘길 가능성 고려… 알트만 증언 오늘 아침, 오픈에이아이(OpenAI)의 샘 알트만(Sam Altman) 최고경영자(CEO)는 회사의 기업 구조에 이의를 제기한 전 공동 창업자 일론 머스크(Elon Musk)의 소송에 대응하기 위해 증언대에 섰습니다.머스크가 비영리 자선단체를 사적 이익을 추구하는 자회사로 전환하여 AI 기반 제품을 마케팅한 다른 창업자들이 “자선단체를 훔쳤다”고 주장한 것과 관련해 질문을 받자, 알트만은 뚜렷한 망설임으로 응답했습니다.“그런 프레임으로 받
관련 특별 주제 추천
음악 작곡 songwriter, 후크, 탑라인 및 다국어 초안 세션을 위한 AI 보컬 데모 도구
songwriter, 후크, 탑라인 및 다국어 초안 세션을 위한 AI 보컬 데모 도구

2026년 최신 최고의 AI 보컬 데모 도구: 작곡가, 후크 제작자 및 다국어 콘텐츠 팀을 위한! XIX.AI는 엄격한 실전 테스트를 거친 강력한 혁신 도구의 최고 평점 목록을 선별했습니다. 여기서는 무료 대 유료 비교 데이터, 종합 순위, 그리고 필수 추천 옵션을 확인할 수 있어 작사 효율성을 높이고 창의적 잠재력을 발휘하는 데 도움이 됩니다. 지금 탐색하여 모든 콘텐츠 요구에 맞는 완벽한 도구를 발견하세요!

9 도구
xix.ai
사업 중소기업을 위한 최고의 AI 경쟁사 분석 도구
중소기업을 위한 최고의 AI 경쟁사 분석 도구

2026년 중소기업을 위한 최신 최고 평점의 AI 경쟁 분석 도구! XIX.AI는 매주 엄격한 실제 테스트와 상세한 순위를 바탕으로 업데이트되는, 업계 판도를 바꿀 만큼 강력한 도구 모음을 엄선했습니다. 생산성을 높이고 경쟁 우위를 확보할 수 있는 ‘꼭 사용해 봐야 할’ 도구를 찾아보실 수 있도록, 무료 버전과 유료 버전의 포괄적인 비교 정보를 제공합니다. 지금 바로 살펴보고 여러분에게 딱 맞는 도구를 찾아보세요!

9 도구
xix.ai
이미지 편집 이커머스 의류용 Photoshop AI 보정 도구, 피부 결 정리 및 색상 일관성
이커머스 의류용 Photoshop AI 보정 도구, 피부 결 정리 및 색상 일관성

2026년 최신 최고의 Photoshop AI 보정 도구: 이커머스 의류, 피부 클리닝, 색상 일관성을 위한! 이 상위 평가 큐레이션 목록은 글쓰기 효율성을 높이고 콘텐츠 제작을 간소화하며 완벽한 시각적 결과를 손쉽게 달성하는 데 도움이 되는 강력한 게임 체인저 솔루션을 특징으로 합니다. 각 도구는 매주 업데이트되는 랭킹을 통해 실제 테스트를 거쳤으며, 무료 대 유료 비교 세부 사항도 포함되어 있습니다. XIX.AI의 지원을 받아 AI 경쟁력을 발휘하고자 하는 모든 이들에게 필수 추천 가이드입니다. 지금 탐색하세요!

10 도구
xix.ai
즉각적인 ChatGPT 워크플로우에 가장 적합한 AI 프롬프트 라이브러리
ChatGPT 워크플로우에 가장 적합한 AI 프롬프트 라이브러리

2026년 최신 최고 평점을 받은 AI 프롬프트 라이브러리로, 모든 유형의 ChatGPT 워크플로우를 최적화하세요. XIX.AI는 최고의 성능을 보장하기 위해 엄격한 실전 테스트를 거친, 강력하고 획기적인 컬렉션을 엄선했습니다. 생산성을 높이고 AI의 잠재력을 최대한 발휘할 수 있는 필수 도구를 선택하는 데 도움이 되는 무료 vs 유료 상세 비교 정보와 전문가 순위를 확인해 보세요. 지금 바로 살펴보세요!

11 도구
xix.ai
교육 및 학습 교사, 과외 교사 및 코호트 기반 학습 프로그램을 위한 AI 퀴즈 빌더 플랫폼
교사, 과외 교사 및 코호트 기반 학습 프로그램을 위한 AI 퀴즈 빌더 플랫폼

2026년 최신 최고의 AI 퀴즈 빌더 플랫폼: 교사, 튜터 및 코호트 기반 학습 프로그램을 위한! XIX.AI는 실제 테스트를 거쳐 정확한 순위를 제공하는 강력한 게임 체인저 도구들의 최고 평점 목록을 선별했습니다. 이 필수 플랫폼은 모든 학습 시나리오에서 글쓰기 효율성을 높이고, 콘텐츠 제작을 간소화하며, 퀴즈 설계를 단순화하는 데 도움을 줍니다. 지금 탐색하여 교육에서 AI의 이점을 최대한 활용할 수 있는 완벽한 도구를 발견하세요!

13 도구
xix.ai
암호 리팩토링, 버그, 보안 취약점을 처리하는 GitHub 팀을 위한 AI 풀 리퀘스트 검토 도구
리팩토링, 버그, 보안 취약점을 처리하는 GitHub 팀을 위한 AI 풀 리퀘스트 검토 도구

GitHub 팀을 위한 2026년 최신 최고의 AI 풀 리퀘스트 검토 도구가 XIX.AI에 소개되었습니다! 이 엄선된 최고 평점 목록은 모든 팀 워크플로우 전반에 걸쳐 리팩토링, 버그 수정, 보안 취약점 탐지를 효율화해 주는 획기적인 솔루션을 선보입니다. 무료와 유료 버전의 비교 분석은 물론, 실제 테스트 결과와 상세한 순위 정보를 통해 생산성을 획기적으로 높여줄 완벽한 도구를 찾아보세요. 지금 바로 살펴보고 AI의 힘을 경험해 보세요!

12 도구
xix.ai
의견 (2)
0/500
JerryGonzález
JerryGonzález 2026년 5월 8일 오전 5시 1분 48초 GMT+09:00

この記事を読んで、自分でもAI要約ツールを作ってみたくなりました。特にLangchainの使い方が分かりやすく説明されていて助かります。ただ、OpenAIのAPIコストが気になるな…ローカルで動く軽量モデルを使ったバージョンも紹介してほしいです。🤔

JamesGreen
JamesGreen 2026년 1월 29일 오후 3시 0분 40초 GMT+09:00

Klasse! Endlich mal eine praktische Anwendung statt nur Theorie. Die Kombination aus Langchain und Streamlit klingt vielversprechend für Prototypen. Ich frage mich, wie gut das bei sehr speziellen Fachtexten funktioniert. Würde mir wünschen, dass so Tools auch für andere Sprachen als Englisch optimiert werden. Hat jemand schon Erfahrungen damit gemacht? 😊

OR