選項
首頁
新聞
使用 Langchain、OpenAI 和 Streamlit 建立自己的 AI 文字摘要器

使用 Langchain、OpenAI 和 Streamlit 建立自己的 AI 文字摘要器

2025-12-09
175

在當今快速演變的數位環境中,快速高效地濃縮大量文本的能力極具價值。本指南將引導您運用現代技術——OpenAI、Langchain 與 Streamlit——打造專屬的文本摘要工具。無論您是開發者、學生或企業專業人士,此工具皆能協助您優化工作流程,並深化對書面資訊的理解。

重點摘要

運用 OpenAI、Langchain 與 Streamlit 開發文本摘要應用程式

運用 GPT 3.5 語言模型實現強大的摘要功能。

運用 Streamlit 建構直覺易用的網頁介面。

整合 Langchain 社群工具以優化摘要工作流程。

理解將文本分割為段落對人工智慧模型處理至關重要的原因。

將最終應用程式部署於 Streamlit 社群雲端,實現便捷存取與共享。

整合自動清除已用 API 金鑰的功能,強化安全性。

文本摘要應用程式開發

理解技術架構

要打造高效能的文本摘要應用程式,深入掌握技術架構至關重要。讓我們詳細檢視各個組件:

  • Streamlit:作為網頁介面的基礎框架,提供以 Python 開發互動式應用程式的簡易靈活方案。其使用者友善特性支援快速原型開發與部署。
  • Langchain:此框架能簡化基於大型語言模型(LLM)的應用開發流程,內含文件處理、文本分割及摘要生成等模組。
  • OpenAI:提供核心LLM模型(具體為GPT 3.5),負責分析輸入文本並生成精煉摘要。
  • Tiktoken:透過將文本切分至 LLM 可處理的細小片段,實現文本分詞以供 OpenAI 模型高效運用。

整合這些技術後,您只需極少編碼工作量,即可打造出可靠且易用的文本摘要工具。

文本摘要生成流程

以下是文本摘要流程的逐步解析:

  1. 輸入文本:使用者提供欲摘要的文本內容,可為文件、文章或其他書面材料。
  2. 字元分割器:透過 Langchain 的 CharacterTextSplitter。此為有效管理文本的關鍵步驟。大量文本可能對AI模型造成負擔,分割處理可確保順暢運算。
  3. 分塊處理:文字分割器將輸入內容拆分為可管理塊狀,同時保留字元邊界以維持語境連貫性。
  4. 文件生成:每個文本區塊轉化為Langchain Document 物件,可無縫整合Langchain摘要功能。
  5. 大型語言模型互動: load_summarize_chain 摘要生成:此功能運用OpenAI大型語言模型,為每份文件生成精簡摘要,簡化與語言模型的互動流程。
  6. 摘要文本:最終產出的是原始文本的精簡版本,以緊湊形式保留關鍵細節。透過調用 LLM 的能力,將文本轉化為簡明扼要卻資訊豐富的摘要。

為何分塊對 AI 模型至關重要?

分塊是關鍵步驟,因其使AI模型能處理更小、更易操作的資訊片段。

此方法降低了文本摘要的認知與運算需求。AI模型處理精簡聚焦的區塊時效能更佳,通常能提升表現與精準度。將長篇文本拆解為易消化的部分,亦有助模型保留上下文脈絡,並聚焦於各區段中最關鍵的資訊。

下表闡明分割文本以提升大型語言模型處理精準度的必要性:

程式碼實作細節

導入函式庫

應用程式開發的第一步是導入所需函式庫: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:透過指定溫度值與使用者 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 API 金鑰以驗證對 OpenAI 語言模型的請求。

    基於安全考量,輸入欄位將在請求處理完成後自動清除 API 金鑰。

  3. 提交:點擊提交按鈕啟動摘要處理。
  4. 檢視摘要內容:處理完成後,應用程式將顯示原始文本的清晰簡潔摘要。

優點與缺點

優點

使閱讀與吸收資訊更輕鬆。

透過提供精簡內容減輕心力負荷。

透過快速摘要提升工作效率。

提升對複雜或長篇文本的理解能力。

缺點

需持有 OpenAI API 金鑰並能存取其服務。

摘要過程中可能出現不準確或遺漏細微細節。

摘要模型自訂選項受限。

為維持安全性,每次使用後必須清除 API 金鑰。

常見問題

何謂文本摘要?

文本摘要是指在保留關鍵資訊的前提下,將長篇文本進行精簡的過程。

為何分塊在文本摘要中至關重要?

分塊技術能將大型文本拆解為更精準的細分區塊,使人工智慧模型得以更有效率地處理內容,從而提升準確度並降低運算需求。

API 金鑰如何提升安全性?

使用後清除 API 金鑰可防止敏感驗證資訊遭儲存或濫用。

如何使用 GitHub 儲存庫?

請依指示複製儲存庫、添加您的 OpenAI API 金鑰,即可開始摘要指定內容。

整個流程需要多久時間?

從設定到摘要生成,整個流程通常耗時不到 10 分鐘。

相關問題

能否使用 OpenAI 以外的語言模型?

是的,文本摘要應用程式可調整為支援其他語言模型。您需更新程式碼以連接替代模型的 API,並視需要調整文本處理步驟。請注意不同模型可能有獨特的輸入要求或性能特徵。

相關文章
DeepMind執行長哈西里斯:我每天睡六個小時,通常在凌晨1點左右感到精力充沛。 DeepMind執行長哈西里斯:我每天睡六個小時,通常在凌晨1點左右感到精力充沛。 Fortune 最近刊登了對谷歌 DeepMind 執行長 Demis Hassabis 的採訪,揭示了他對休息和生產力的非傳統方法。Hassabis 透露,他睡眠時間非常少,將清醒時間劃分為兩個不同的工作階段。關於他的睡眠習慣,Hassabis 表示:“我目標睡六小時,但我的習慣非同尋常。我可以在白天有效運作。”他強調,睡眠少於六小時會對大腦健康產生負面影響。Hassabis 於 2010 年聯合創立了 DeepMind(後被谷歌收購),並因其在蛋白質結構預測方面的開創性工作榮獲 20
儘管營收未達預期,OpenAI 與 Anthropic 仍爭奪市場份額 儘管營收未達預期,OpenAI 與 Anthropic 仍爭奪市場份額 儘管近期有報導指出 OpenAI 未達營收目標,導致本週二科技股承壓,但私人人工智慧實驗室的投資者仍展現出韌性。資深投資者已確認,儘管媒體報導負面,他們仍不會削減投資。分析師認為當前的 AI 競逐仍處於初期階段,因此排除「贏家通吃」的結果。儘管高昂的運算成本對營收造成壓力,但各實驗室可透過調高訂閱費來提升獲利能力。產業格局正經歷微妙的變化與 OpenAI 不同,競爭對手 Anthropic 獲得了
加州自動駕駛合規:罰單、地理圍欄與 100 萬英里的新時代 加州自動駕駛合規:罰單、地理圍欄與 100 萬英里的新時代 Guident 在南佛羅里達州營運一輛 AuveTech 接駁車,並運用其遠端監控技術,管理西棕櫚灘的一條四英里路線以及博卡拉頓的一條一英里路線。| 圖片來源:Guident加州正重新定義無人駕駛車輛的監管格局,從科技產業的「快速行動、打破常規」心態,轉向嚴格的問責制與嚴謹的行駛里程要求。Guident 執行董事長兼執行長哈羅德·布勞恩(Harold Braun)在《機器人報告》(The Robo
相關專題推薦
音樂創作 用於混音製作、取樣準備及卡拉OK母帶處理的 AI 聲部分離工具
用於混音製作、取樣準備及卡拉OK母帶處理的 AI 聲部分離工具

2026年最新、最優秀且評分最高的AI音軌分離工具彙總,專為混音製作、取樣準備以及卡拉OK音訊處理而設計。這些功能強大的創新工具經過實際測試,能夠實現精準的音訊分離,顯著提升工作效率。XIX.AI每週都會更新免費的付費產品對比指南,幫助您找到最適合自身需求的工具。立即探索,發揮您的AI優勢。

8 個工具
xix.ai
數據分析 用於收入看板、轉化漏斗分析及產品指標分析的 AI SQL 助手
用於收入看板、轉化漏斗分析及產品指標分析的 AI SQL 助手

2026年最新最優秀的AI SQL輔助工具排名揭曉!XIX.AI精心挑選了一系列功能強大的工具,這些工具會定期更新,並透過真實的場景測試來驗證其效能。使用這些值得嘗試的工具,您可以快速生成精準的收入分析報表、分析銷售流程,並追蹤產品各項指標,從而大幅提升工作效率。立即探索,找到最適合您的資料驅動決策工具!238個字元

9 個工具
xix.ai
音樂創作 最佳用於歌曲草稿的 AI 旋律創作工具
最佳用於歌曲草稿的 AI 旋律創作工具

2026 年最新最佳頂級評分 AI 旋律創作工具,助力歌曲草稿創作!XIX.AI 精心策劃了一套極具影響力且經過嚴格真實世界測試的變革性合集,旨在提供最佳的創作體驗。您可以找到詳細的免費與付費版對比、精準的排名以及必試選項,這些工具旨在幫助您輕鬆創作出令人驚豔的歌曲草稿,並顯著提升您的創意生產力。立即探索,發現您的完美工具!

8 個工具
xix.ai
聊天機器人 最適合面試練習的 AI 對話訓練工具
最適合面試練習的 AI 對話訓練工具

2026 年最新、最受好評的 AI 面試對話訓練工具,盡在 XIX.AI!這份精心精選的清單收錄了多款功能強大、顛覆傳統的工具,這些工具均經過嚴格的實戰測試,能提供精準的回饋。 您將在此找到免費版與付費版的比較分析,以及詳細的排名榜單,助您挑選必試的選項,從而提升自信與技能。立即探索,發掘助您在面試中脫穎而出的完美工具!

12 個工具
xix.ai
設計與藝術 最適合進行創意實驗的 AI 風格轉移工具
最適合進行創意實驗的 AI 風格轉移工具

2026 年最新、最佳且評價最高的 AI 風格轉移工具,助您進行創意實驗!XIX.AI 精心精選了一系列強大且具革命性的必試工具,這些工具經實際測試與嚴格評比,能帶來卓越成果。這些頂尖解決方案能加速內容創作並開啟無盡的創意可能性,協助創作者顯著提升生產力。 立即探索,找出最適合您的工具,並從今天開始創作吧!

9 個工具
xix.ai
漫畫創作 最適合視覺敘事的 AI 對話氣泡工具
最適合視覺敘事的 AI 對話氣泡工具

2026 年最新、最受好評的視覺敘事 AI 對話氣泡工具,現已登陸 XIX.AI!這份精心挑選的合集收錄了強大且具顛覆性的工具,能協助創作者提升生產力並突破創作瓶頸。 查看免費版與付費版的比較、參考實際測試結果,並查閱最新排行榜,找出最適合打造引人入勝視覺敘事的必試解決方案。立即探索,發掘您的理想工具!

10 個工具
xix.ai
評論 (2)
0/500
JerryGonzález
JerryGonzález 2026-05-08 04:01:48

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

JamesGreen
JamesGreen 2026-01-29 14:00:40

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