
一、介紹
????????你有沒有想過如何使用大型語言模型(LLM)構建強大的應用程序?或者,也許您正在尋找一種簡化的方式來開發這些應用程序?那么你來對地方了!本指南將向您介紹LangChain,這是一個簡化構建LLM驅動的應用程序的過程的工具。我們還將深入研究?DemoGPT,這是一項尖端技術,可自動執行管道生成過程,提供無縫的開發體驗。
二、開始使用語言鏈
????????LangChain是一個促進端到端語言模型應用程序開發的平臺。要開始使用 LangChain 開始您的旅程,第一步是安裝它。詳細的安裝說明可以在?LangChain 文檔中找到。我們這里簡述為:
11 最低安裝
pip install langchain
????????這將安裝 LangChain 的最低要求。 LangChain 的很多價值在于將其與各種模型提供程序、數據存儲等集成。默認情況下,并未安裝執行此操作所需的依賴項。然而,還有另外兩種安裝 LangChain 的方法可以引入這些依賴項。
2? 要安裝常見 LLM 提供程序所需的模塊,請運行:
pip install langchain[llms]
3 要安裝所有集成所需的所有模塊,請運行:
pip install langchain[all]
請注意,如果使用 ,則在將方括號作為參數傳遞給命令時,需要用方括號括起來,例如:zsh
pip install 'langchain[all]'
? ? ? ? 安裝后,您需要將LangChain與大型語言模型(LLM)集成。在本指南中,我們將使用 OpenAI 的 API,這些 API 不需要額外的設置。
三、使用 LangChain 構建語言模型應用程序
????????在設置 LangChain 并將其與 LLM 集成之后,有趣的部分開始了——構建您的語言模型應用程序。LangChain 提供了各種模塊,您可以組合這些模塊來創建復雜的應用程序或單獨用于更簡單的應用程序。
3.1 使用法學LLM進行預測
????????LangChain最基本的構建塊是在某些輸入上調用LLM。例如,假設我們正在創建一個服務,該服務根據公司制作的內容生成公司名稱。下面是如何使用 LangChain 實現此目的的簡單示例:
import { OpenAI } from "langchain/llms/openai";
const model = new OpenAI({ openAIApiKey: "sk-…", temperature: 0.9 });
const res = await model.call("What would be a good company name for a company that makes colorful socks?");
console.log(res); // Outputs: '\n\nFantasy Sockery'
3.2 管理LLM的提示
????????在應用程序中使用 LLM 時,通常不會將用戶輸入直接發送到 LLM。相反,您將使用用戶輸入構造提示并將其發送到 LLM。LangChain 使這變得簡單:
import { PromptTemplate } from "langchain/prompts";
const template = "What is a good name for a company that makes {product}?";
const prompt = new PromptTemplate({ template: template, inputVariables: ["product"] });
const res = await prompt.format({ product: "colorful socks" });
console.log(res); // Outputs: 'What is a good name for a company that makes colorful socks?'
3.3 使用 LangChain 創建多步驟工作流
????????實際應用程序不僅僅是單個基元,而是它們的組合。LangChain 允許您創建由鏈接組成的鏈,這些鏈接可以是原語,如 LLM 或其他鏈。下面是如何創建 LLMChain 的示例,該 LLMChain 使用 PromptTemplate 格式化用戶輸入并將格式化的響應傳遞給 LLM:
import { OpenAI } from "langchain/llms/openai";
import { PromptTemplate } from "langchain/prompts";
import { LLMChain } from "langchain/chains";
const model = new OpenAI({ temperature: 0.9 });
const template = "What is a good name for a company that makes {product}?";
const prompt = new PromptTemplate({ template: template, inputVariables: ["product"] });
const chain = new LLMChain({ llm: model, prompt: prompt });
const res = await chain.call({ product: "colorful socks
" });
console.log(res); // Outputs: { text: '\n\nColorfulCo Sockery.' }
3.4使用代理動態運行鏈
????????LangChain超越了代理的預定工作流程。代理使用 LLM 來確定要執行的操作以及順序。此高級功能使您的應用程序能夠實時適應用戶輸入,從而顯著增強其功能。
3.5 使用 DemoGPT 自動化整個管道
????????雖然LangChain為構建LLM驅動的應用程序提供了強大的基礎,但還有另一個工具可以增強您的開發過程:DemoGPT。
????????DemoGPT 利用 LangChain 文檔的強大功能來自動化管道生成、執行代碼調試并交付精美的演示應用程序。通過根據需求智能創建數據處理管道,無需手動施工,節省開發人員的時間和精力。
????????此外,它還提供交互式演示生成、版本控制和多個產品版本的無縫管理。它顯著提高了效率和準確性,使其成為軟件開發工具包中的寶貴工具。
????????如果您有興趣觀看使用 LangChain 和 DemoGPT 構建的應用程序的現場演示,請查看 Streamlit 應用程序上的?DemoGPT
????????此演示展示了?DemoGPT?的功能,并通過模擬交互和實時可視化提供了實踐經驗。
四、結論
????????LangChain和DemoGPT是強大的工具,可以簡化開發LLM驅動的應用程序的過程。通過自動化管道生成過程并提供基于用戶輸入的動態鏈,它們允許開發人員輕松創建復雜的應用程序。無論您是經驗豐富的開發人員還是剛剛開始使用LLM,這些工具都可以提供無縫且高效的開發體驗。
????????那么,你還在等什么?立即開始使用 LangChain 和?DemoGPT構建您的 LLM 應用程序!
????????本指南只是使用這些工具可以實現的目標的開始。隨著您進一步探索它們,您將發現它們可以增強您的開發過程并使您能夠創建強大的交互式應用程序的更多方法。
????????我希望本指南內容豐富且鼓舞人心。祝您編碼愉快!
參考資料:
Getting Started with LangChain: A Beginner’s Guide to Building LLM-Powered Applications | by DemoGPT | Jul, 2023 | AI Mind