{"id":120703,"date":"2025-11-11T10:00:00","date_gmt":"2025-11-11T03:00:00","guid":{"rendered":"https:\/\/tino.vn\/blog\/?p=120703"},"modified":"2026-10-30T10:58:42","modified_gmt":"2026-10-30T03:58:42","slug":"langchain-la-gi","status":"publish","type":"post","link":"https:\/\/tino.vn\/blog\/langchain-la-gi\/","title":{"rendered":"LangChain l\u00e0 g\u00ec? Framework x\u00e2y d\u1ef1ng \u1ee9ng d\u1ee5ng v\u00e0 AI agent v\u1edbi LLM"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><strong>LangChain l\u00e0 framework m\u00e3 ngu\u1ed3n m\u1edf (gi\u1ea5y ph\u00e9p MIT) gi\u00fap l\u1eadp tr\u00ecnh vi\u00ean x\u00e2y d\u1ef1ng \u1ee9ng d\u1ee5ng v\u00e0 AI agent d\u1ef1a tr\u00ean m\u00f4 h\u00ecnh ng\u00f4n ng\u1eef l\u1edbn (LLM), b\u1eb1ng Python ho\u1eb7c JavaScript\/TypeScript: n\u1ed1i model v\u1edbi c\u00f4ng c\u1ee5, d\u1eef li\u1ec7u ri\u00eang v\u00e0 b\u1ed9 nh\u1edb h\u1ed9i tho\u1ea1i qua m\u1ed9t giao di\u1ec7n chung.<\/strong> B\u1ea3n hi\u1ec7n h\u00e0nh l\u00e0 <code>langchain<\/code> 1.4.7 (\u0111\u1ed1i chi\u1ebfu 29\/10\/2026 tr\u00ean <a href=\"https:\/\/pypi.org\/project\/langchain\/\" target=\"_blank\" rel=\"noopener nofollow\">PyPI<\/a>). N\u1ebfu b\u1ea1n ch\u01b0a r\u00f5 agent l\u00e0 g\u00ec, xem <a href=\"https:\/\/tino.vn\/blog\/ai-agent-la-gi\/\">AI agent l\u00e0 g\u00ec<\/a>; model ph\u00eda sau LangChain v\u1eabn g\u1ecdi qua API key, xem <a href=\"https:\/\/tino.vn\/blog\/llm-lay-api-key-mien-phi\/\">c\u00e1ch l\u1ea5y LLM API key mi\u1ec5n ph\u00ed<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">C\u00e1c m\u1ee5c d\u01b0\u1edbi \u0111\u00e2y \u0111i t\u1eeb l\u00fd do LangChain ra \u0111\u1eddi, c\u00e1c th\u00e0nh ph\u1ea7n ch\u00ednh, \u0111i\u1ec3m \u0111\u1ed5i \u1edf b\u1ea3n 1.x, t\u1edbi m\u1ed9t v\u00ed d\u1ee5 code ch\u1ea1y \u0111\u01b0\u1ee3c, \u01b0u nh\u01b0\u1ee3c \u0111i\u1ec3m v\u00e0 so s\u00e1nh v\u1edbi LlamaIndex, Semantic Kernel, Haystack.<\/p>\n\n\n\n<h2 id=\"Gi\u1edbi_thi\u1ec7u_\u0111\u00f4i_n\u00e9t_v\u1ec1_LangChain\">Gi\u1edbi thi\u1ec7u \u0111\u00f4i n\u00e9t v\u1ec1 LangChain<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">LangChain l\u00e0 l\u1edbp ph\u1ea7n m\u1ec1m n\u1eb1m gi\u1eefa \u1ee9ng d\u1ee5ng c\u1ee7a b\u1ea1n v\u00e0 c\u00e1c LLM nh\u01b0 GPT, Claude, Gemini. Thay v\u00ec t\u1ef1 vi\u1ebft code g\u1ecdi API, gh\u00e9p prompt, g\u1ecdi c\u00f4ng c\u1ee5 v\u00e0 l\u01b0u l\u1ecbch s\u1eed chat cho t\u1eebng h\u00e3ng, b\u1ea1n d\u00f9ng c\u00e1c kh\u1ed1i d\u1ef1ng s\u1eb5n c\u1ee7a LangChain v\u00e0 ch\u1ec9 \u0111\u1ed5i c\u1ea5u h\u00ecnh khi mu\u1ed1n thay model.<\/p>\n\n\n\n<h3 id=\"LangChain_l\u00e0_g\u00ec?\">LangChain l\u00e0 g\u00ec?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/www.langchain.com\/\" target=\"_blank\" rel=\"noopener nofollow\">LangChain <\/a>l\u00e0 framework m\u00e3 ngu\u1ed3n m\u1edf do c\u00f4ng ty LangChain, Inc. ph\u00e1t tri\u1ec3n, c\u00f3 b\u1ea3n Python v\u00e0 JavaScript\/TypeScript. Framework n\u00e0y c\u00f3 ch\u1ee9c n\u0103ng h\u1ed7 tr\u1ee3 l\u1eadp tr\u00ecnh vi\u00ean x\u00e2y d\u1ef1ng c\u00e1c \u1ee9ng d\u1ee5ng d\u1ef1a tr\u00ean m\u00f4 h\u00ecnh ng\u00f4n ng\u1eef l\u1edbn (LLM) nh\u01b0 <a href=\"https:\/\/tino.vn\/blog\/model-cua-openai\/\">GPT<\/a>, <a href=\"https:\/\/tino.vn\/blog\/model-cua-claude\/\">Claude<\/a> hay <a href=\"https:\/\/tino.vn\/blog\/gemini-ai-la-gi\/\">Gemini<\/a> m\u00e0 kh\u00f4ng ph\u1ea3i vi\u1ebft l\u1ea1i code cho t\u1eebng h\u00e3ng.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">H\u00e3y t\u01b0\u1edfng t\u01b0\u1ee3ng LLM l\u00e0 m\u1ed9t &#8220;b\u1ed9 n\u00e3o&#8221; c\u1ef1c k\u1ef3 th\u00f4ng minh nh\u01b0ng b\u1ecb &#8220;nh\u1ed1t&#8221; trong m\u1ed9t c\u0103n ph\u00f2ng v\u00e0 kh\u00f4ng bi\u1ebft g\u00ec v\u1ec1 th\u1ebf gi\u1edbi b\u00ean ngo\u00e0i hay d\u1eef li\u1ec7u c\u00e1 nh\u00e2n c\u1ee7a b\u1ea1n. LangChain ch\u00ednh l\u00e0 &#8220;ch\u1ea5t keo&#8221; k\u1ebft n\u1ed1i &#8220;b\u1ed9 n\u00e3o&#8221; \u0111\u00f3 v\u1edbi th\u1ebf gi\u1edbi th\u1ef1c; cho ph\u00e9p LLM truy c\u1eadp v\u00e0o Internet \u0111\u1ec3 l\u1ea5y th\u00f4ng tin m\u1edbi, &#8220;\u0111\u1ecdc&#8221; c\u00e1c t\u1ec7p PDF ho\u1eb7c t\u00e0i li\u1ec7u c\u1ee7a ri\u00eang b\u1ea1n, c\u0169ng nh\u01b0 k\u1ebft n\u1ed1i v\u1edbi c\u00e1c API kh\u00e1c.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"700\" height=\"375\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/11\/LangChain-la-gi-1.png\" alt=\"S\u01a1 \u0111\u1ed3 c\u00e1c th\u00e0nh ph\u1ea7n LangChain: LLM, prompt templates, agents, retrieval, memory, callbacks\" class=\"wp-image-120704\" title=\"\" srcset=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/11\/LangChain-la-gi-1.png 700w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2025\/11\/LangChain-la-gi-1-300x161.png 300w\" sizes=\"(max-width: 700px) 100vw, 700px\" \/><figcaption class=\"wp-element-caption\">C\u00e1c kh\u1ed1i gh\u00e9p quen thu\u1ed9c c\u1ee7a LangChain: model, prompt, retrieval, memory, agent<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">V\u1edbi LangChain, b\u1ea1n c\u00f3 th\u1ec3 l\u00e0m chatbot h\u1ecfi \u0111\u00e1p tr\u00ean t\u00e0i li\u1ec7u ri\u00eang, tr\u1ee3 l\u00fd n\u1ed9i b\u1ed9, c\u00f4ng c\u1ee5 t\u00ecm ki\u1ebfm theo ng\u1eef ngh\u0129a ho\u1eb7c agent bi\u1ebft g\u1ecdi API. B\u1ea1n v\u1eabn c\u1ea7n bi\u1ebft l\u1eadp tr\u00ecnh Python ho\u1eb7c JavaScript, nh\u01b0ng kh\u00f4ng c\u1ea7n l\u00e0 chuy\u00ean gia h\u1ecdc m\u00e1y.<\/p>\n\n\n\n<h3 id=\"L\u00fd_do_LangChain_ra_\u0111\u1eddi\">L\u00fd do LangChain ra \u0111\u1eddi<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">C\u00e1c m\u00f4 h\u00ecnh ng\u00f4n ng\u1eef l\u1edbn (LLM) nh\u01b0 GPT, Claude hay Gemini l\u00e0 nh\u1eefng c\u00f4ng ngh\u1ec7 \u0111\u1ed9t ph\u00e1, nh\u01b0ng khi s\u1eed d\u1ee5ng ch\u00fang m\u1ed9t c\u00e1ch &#8220;nguy\u00ean b\u1ea3n&#8221;, ch\u00fang ta ngay l\u1eadp t\u1ee9c v\u1ea5p ph\u1ea3i nh\u1eefng gi\u1edbi h\u1ea1n c\u1ed1 h\u1eefu:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Ki\u1ebfn th\u1ee9c b\u1ecb gi\u1edbi h\u1ea1n:<\/strong> C\u00e1c LLM ch\u1ec9 bi\u1ebft th\u00f4ng tin \u0111\u1ebfn m\u1ed9t th\u1eddi \u0111i\u1ec3m nh\u1ea5t \u0111\u1ecbnh (g\u1ecdi l\u00e0 knowledge cutoff). Ch\u00fang ho\u00e0n to\u00e0n kh\u00f4ng bi\u1ebft g\u00ec v\u1ec1 c\u00e1c s\u1ef1 ki\u1ec7n, tin t\u1ee9c, hay d\u1eef li\u1ec7u m\u1edbi xu\u1ea5t hi\u1ec7n sau ng\u00e0y \u0111\u00f3.<\/li>\n\n\n<li><strong>&#8220;M\u00f9 t\u1ecbt&#8221; v\u1ec1 d\u1eef li\u1ec7u c\u00e1 nh\u00e2n:<\/strong> LLM kh\u00f4ng bi\u1ebft g\u00ec v\u1ec1 b\u1ea1n. Ch\u00fang kh\u00f4ng th\u1ec3 truy c\u1eadp v\u00e0o c\u00e1c t\u1ec7p tin c\u00e1 nh\u00e2n (nh\u01b0 PDF, Word), email, c\u01a1 s\u1edf d\u1eef li\u1ec7u n\u1ed9i b\u1ed9 c\u1ee7a c\u00f4ng ty b\u1ea1n, hay b\u1ea5t k\u1ef3 ngu\u1ed3n d\u1eef li\u1ec7u ri\u00eang t\u01b0 n\u00e0o.<\/li>\n\n\n<li><strong>Kh\u00f4ng th\u1ec3 &#8220;h\u00e0nh \u0111\u1ed9ng&#8221;:<\/strong> LLM v\u1ec1 c\u01a1 b\u1ea3n ch\u1ec9 l\u00e0 m\u1ed9t c\u1ed7 m\u00e1y &#8220;ch\u1eef v\u00e0o, ch\u1eef ra&#8221; (text-in, text-out). Ch\u00fang kh\u00f4ng th\u1ec3 t\u1ef1 m\u00ecnh duy\u1ec7t web, th\u1ef1c hi\u1ec7n m\u1ed9t ph\u00e9p t\u00ednh to\u00e1n ph\u1ee9c t\u1ea1p (ch\u00ednh x\u00e1c), g\u1ecdi m\u1ed9t API \u0111\u1ec3 \u0111\u1eb7t v\u00e9 m\u00e1y bay hay t\u01b0\u01a1ng t\u00e1c v\u1edbi b\u1ea5t k\u1ef3 h\u1ec7 th\u1ed1ng b\u00ean ngo\u00e0i n\u00e0o.<\/li>\n\n\n<li><strong>Kh\u00f3 ki\u1ec3m so\u00e1t v\u00e0 &#8220;\u1ea3o gi\u00e1c&#8221; (Hallucination):<\/strong> Khi \u0111\u01b0\u1ee3c y\u00eau c\u1ea7u th\u1ef1c hi\u1ec7n c\u00e1c t\u00e1c v\u1ee5 ph\u1ee9c t\u1ea1p (v\u00ed d\u1ee5: &#8220;Vi\u1ebft m\u1ed9t b\u00e0i blog 2000 t\u1eeb v\u1ec1 ch\u1ee7 \u0111\u1ec1 X, sau \u0111\u00f3 t\u00f3m t\u1eaft v\u00e0 d\u1ecbch sang ti\u1ebfng Nh\u1eadt&#8221;), LLM c\u00f3 th\u1ec3 l\u00e0m t\u1ed1t m\u1ed9t ph\u1ea7n nh\u01b0ng l\u1ea1i &#8220;b\u1ecba&#8221; d\u1eef li\u1ec7u ho\u1eb7c \u0111i ch\u1ec7ch h\u01b0\u1edbng \u1edf ph\u1ea7n c\u00f2n l\u1ea1i.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">LangChain ra \u0111\u1eddi ch\u00ednh l\u00e0 \u0111\u1ec3 gi\u1ea3i quy\u1ebft t\u1ea5t c\u1ea3 nh\u1eefng v\u1ea5n \u0111\u1ec1 tr\u00ean. Framework n\u00e0y \u0111\u01b0\u1ee3c sinh ra t\u1eeb nhu c\u1ea7u &#8220;m\u1edf kh\u00f3a&#8221; ti\u1ec1m n\u0103ng th\u1ef1c s\u1ef1 c\u1ee7a LLM, bi\u1ebfn ch\u00fang t\u1eeb nh\u1eefng &#8220;b\u1ed9 n\u00e3o&#8221; th\u00f4ng minh nh\u01b0ng b\u1ecb c\u00f4 l\u1eadp th\u00e0nh nh\u1eefng &#8220;t\u00e1c nh\u00e2n&#8221; (Agent) c\u00f3 kh\u1ea3 n\u0103ng t\u01b0\u01a1ng t\u00e1c v\u00e0 h\u00e0nh \u0111\u1ed9ng trong th\u1ebf gi\u1edbi th\u1ef1c.<\/p>\n\n\n\n<h2 id=\"LangChain_1.x_kh\u00e1c_g\u00ec_b\u1ea3n_c\u0169?\">LangChain 1.x kh\u00e1c g\u00ec b\u1ea3n c\u0169?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">T\u1eeb b\u1ea3n 1.0 (l\u00ean PyPI ng\u00e0y 17\/10\/2025), LangChain g\u1ecdn l\u1ea1i quanh m\u1ed9t vi\u1ec7c ch\u00ednh: d\u1ef1ng agent b\u1eb1ng h\u00e0m <code>create_agent<\/code>. Theo <a href=\"https:\/\/docs.langchain.com\/oss\/python\/releases\/langchain-v1\" target=\"_blank\" rel=\"noopener nofollow\">ghi ch\u00fa ph\u00e1t h\u00e0nh LangChain v1<\/a>, c\u00e1c chain c\u0169, retriever c\u0169 v\u00e0 indexing API chuy\u1ec3n sang g\u00f3i <code>langchain-classic<\/code>; agent m\u1edbi ch\u1ea1y tr\u00ean LangGraph.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1400\" height=\"750\" src=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/langchain-la-gi-create-agent-langgraph.webp\" alt=\"S\u01a1 \u0111\u1ed3 LangChain 1.x: code \u1ee9ng d\u1ee5ng g\u1ecdi create_agent g\u1ed3m model, tools, middleware; create_agent ch\u1ea1y tr\u00ean LangGraph v\u1edbi state, checkpoint, interrupt; LangSmith \u0111\u1ec3 trace v\u00e0 \u0111\u00e1nh gi\u00e1\" class=\"wp-image-132872\" title=\"\" srcset=\"https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/langchain-la-gi-create-agent-langgraph.webp 1400w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/langchain-la-gi-create-agent-langgraph-300x161.webp 300w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/langchain-la-gi-create-agent-langgraph-1024x549.webp 1024w, https:\/\/tino.vn\/blog\/wp-content\/uploads\/2026\/10\/langchain-la-gi-create-agent-langgraph-768x411.webp 768w\" sizes=\"(max-width: 1400px) 100vw, 1400px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong><code>create_agent<\/code> thay cho <code>AgentExecutor<\/code> v\u00e0 <code>create_react_agent<\/code>:<\/strong> m\u1ed9t h\u00e0m nh\u1eadn model, danh s\u00e1ch tool v\u00e0 system prompt.<\/li>\n\n\n<li><strong>Middleware:<\/strong> chen logic v\u00e0o tr\u01b0\u1edbc\/sau m\u1ed7i l\u1ea7n g\u1ecdi model ho\u1eb7c tool, v\u00ed d\u1ee5 t\u00f3m t\u1eaft l\u1ecbch s\u1eed d\u00e0i, che d\u1eef li\u1ec7u c\u00e1 nh\u00e2n, d\u1eebng ch\u1edd ng\u01b0\u1eddi duy\u1ec7t.<\/li>\n\n\n<li><strong>N\u1ed9i dung chu\u1ea9n ho\u00e1:<\/strong> thu\u1ed9c t\u00ednh <code>content_blocks<\/code> \u0111\u1ecdc ph\u1ea7n suy lu\u1eadn, ch\u1eef, l\u1eddi g\u1ecdi tool theo m\u1ed9t ki\u1ec3u chung cho nhi\u1ec1u h\u00e3ng.<\/li>\n\n\n<li><strong>Y\u00eau c\u1ea7u Python 3.10 tr\u1edf l\u00ean<\/strong> (PyPI, 29\/10\/2026). Code c\u0169 c\u00f3 h\u01b0\u1edbng d\u1eabn chuy\u1ec3n \u0111\u1ed5i t\u1ea1i <a href=\"https:\/\/docs.langchain.com\/oss\/python\/migrate\/langchain-v1\" target=\"_blank\" rel=\"noopener nofollow\">trang migrate v1<\/a>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">LangGraph l\u00e0 l\u1edbp \u0111i\u1ec1u ph\u1ed1i c\u1ea5p th\u1ea5p n\u1eb1m b\u00ean d\u01b0\u1edbi, lo tr\u1ea1ng th\u00e1i, l\u01b0u checkpoint v\u00e0 t\u1ea1m d\u1eebng ch\u1edd duy\u1ec7t; xem ri\u00eang \u1edf b\u00e0i <a href=\"https:\/\/tino.vn\/blog\/langgraph-la-gi\/\">LangGraph l\u00e0 g\u00ec<\/a>. B\u1ea1n c\u00f3 th\u1ec3 d\u00f9ng LangChain m\u00e0 kh\u00f4ng vi\u1ebft d\u00f2ng LangGraph n\u00e0o.<\/p>\n\n\n\n<h2 id=\"6_th\u00e0nh_ph\u1ea7n_c\u1ed1t_l\u00f5i_c\u1ee7a_LangChain\">6 th\u00e0nh ph\u1ea7n c\u1ed1t l\u00f5i c\u1ee7a LangChain<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">S\u00e1u th\u00e0nh ph\u1ea7n d\u01b0\u1edbi \u0111\u00e2y l\u00e0 c\u00e1ch LangChain chia nh\u1ecf m\u1ed9t \u1ee9ng d\u1ee5ng LLM: model, prompt, chain, retrieval, agent v\u00e0 memory. T\u00ean g\u1ecdi \u0111\u1ebfn t\u1eeb c\u00e1c b\u1ea3n 0.x v\u00e0 v\u1eabn h\u1eefu \u00edch \u0111\u1ec3 hi\u1ec3u kh\u00e1i ni\u1ec7m; \u1edf b\u1ea3n 1.x, chain v\u00e0 m\u1ed9t ph\u1ea7n retrieval chuy\u1ec3n sang g\u00f3i classic, c\u00f2n agent v\u00e0 memory \u0111i qua <code>create_agent<\/code>.<\/p>\n\n\n\n<h3 id=\"1._Models_(M\u00f4_h\u00ecnh):_Giao_di\u1ec7n_k\u1ebft_n\u1ed1i_v\u1edbi_&#8220;b\u1ed9_n\u00e3o&#8221;_AI\">1. Models (M\u00f4 h\u00ecnh): Giao di\u1ec7n k\u1ebft n\u1ed1i v\u1edbi &#8220;b\u1ed9 n\u00e3o&#8221; AI<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0110\u00e2y kh\u00f4ng ph\u1ea3i l\u00e0 b\u1ea3n th\u00e2n m\u00f4 h\u00ecnh AI, m\u00e0 l\u00e0 l\u1edbp giao di\u1ec7n gi\u00fap LangChain &#8220;n\u00f3i chuy\u1ec7n&#8221; v\u1edbi r\u1ea5t nhi\u1ec1u lo\u1ea1i m\u00f4 h\u00ecnh kh\u00e1c nhau m\u1ed9t c\u00e1ch th\u1ed1ng nh\u1ea5t. B\u1ea1n kh\u00f4ng c\u1ea7n ph\u1ea3i vi\u1ebft code ri\u00eang cho OpenAI, r\u1ed3i l\u1ea1i vi\u1ebft code kh\u00e1c cho Google Gemini hay Claude. LangChain c\u00f3 3 lo\u1ea1i giao di\u1ec7n m\u00f4 h\u00ecnh:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>LLMs:<\/strong> Giao di\u1ec7n cho model ki\u1ec3u c\u0169 (nh\u1eadn v\u0103n b\u1ea3n v\u00e0o, tr\u1ea3 v\u0103n b\u1ea3n ra); nay \u00edt d\u00f9ng v\u00ec ph\u1ea7n l\u1edbn model l\u00e0 chat model.<\/li>\n\n\n<li><strong>Chat Models:<\/strong> Giao di\u1ec7n cho c\u00e1c m\u00f4 h\u00ecnh chuy\u00ean v\u1ec1 h\u1ed9i tho\u1ea1i (nh\u1eadn v\u00e0o m\u1ed9t lo\u1ea1t tin nh\u1eafn c\u00f3 vai tr\u00f2 nh\u01b0 &#8220;Ng\u01b0\u1eddi d\u00f9ng&#8221;, &#8220;AI&#8221;, &#8220;H\u1ec7 th\u1ed1ng&#8221; v\u00e0 tr\u1ea3 v\u1ec1 m\u1ed9t tin nh\u1eafn).<\/li>\n\n\n<li><strong>Text Embedding Models:<\/strong> Giao di\u1ec7n cho c\u00e1c m\u00f4 h\u00ecnh chuy\u00ean &#8220;vector h\u00f3a&#8221; v\u0103n b\u1ea3n, bi\u1ebfn c\u00e1c con ch\u1eef th\u00e0nh c\u00e1c d\u00e3y s\u1ed1 (vector) \u0111\u1ec3 m\u00e1y t\u00ednh c\u00f3 th\u1ec3 so s\u00e1nh s\u1ef1 t\u01b0\u01a1ng \u0111\u1ed3ng v\u1ec1 ng\u1eef ngh\u0129a.<\/li>\n<\/ul>\n\n\n\n<h3 id=\"2._Prompts_(C\u00e2u_l\u1ec7nh):_Ngh\u1ec7_thu\u1eadt_&#8220;\u0111\u1eb7t_c\u00e2u_h\u1ecfi&#8221;\">2. Prompts (C\u00e2u l\u1ec7nh): Ngh\u1ec7 thu\u1eadt &#8220;\u0111\u1eb7t c\u00e2u h\u1ecfi&#8221;<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Trong LangChain, &#8220;Prompt&#8221; kh\u00f4ng ch\u1ec9 l\u00e0 m\u1ed9t c\u00e2u h\u1ecfi th\u00f4. Th\u00e0nh ph\u1ea7n n\u00e0y gi\u00fap b\u1ea1n <strong>qu\u1ea3n l\u00fd v\u00e0 t\u1ed1i \u01b0u h\u00f3a<\/strong> c\u00e2u l\u1ec7nh \u0111\u1ea7u v\u00e0o cho LLM.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Prompt Templates:<\/strong> \u0110\u00e2y l\u00e0 m\u1ed9t &#8220;c\u00f4ng th\u1ee9c&#8221; t\u1ea1o ra c\u00e2u l\u1ec7nh. Thay v\u00ec vi\u1ebft &#8220;Th\u1ee7 \u0111\u00f4 c\u1ee7a Vi\u1ec7t Nam l\u00e0 g\u00ec?&#8221;, b\u1ea1n t\u1ea1o m\u1ed9t khu\u00f4n m\u1eabu: &#8220;Th\u1ee7 \u0111\u00f4 c\u1ee7a {t\u00ean_qu\u1ed1c_gia} l\u00e0 g\u00ec?&#8221;. Sau \u0111\u00f3, b\u1ea1n ch\u1ec9 c\u1ea7n \u0111\u01b0a bi\u1ebfn t\u00ean_qu\u1ed1c_gia v\u00e0o.<\/li>\n\n\n<li><strong>Example Selectors:<\/strong> Cho ph\u00e9p b\u1ea1n t\u1ef1 \u0111\u1ed9ng ch\u00e8n th\u00eam c\u00e1c v\u00ed d\u1ee5 (few-shot learning) v\u00e0o c\u00e2u l\u1ec7nh \u0111\u1ec3 &#8220;h\u01b0\u1edbng d\u1eabn&#8221; LLM tr\u1ea3 l\u1eddi \u0111\u00fang \u00fd b\u1ea1n mu\u1ed1n.<\/li>\n<\/ul>\n\n\n\n<h3 id=\"3._Chains_(Chu\u1ed7i):_&#8220;Tr\u00e1i_tim&#8221;_c\u1ee7a_LangChain\">3. Chains (Chu\u1ed7i): &#8220;Tr\u00e1i tim&#8221; c\u1ee7a LangChain<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0110\u00fang nh\u01b0 t\u00ean g\u1ecdi (&#8220;Chain&#8221; = Chu\u1ed7i), \u0111\u00e2y l\u00e0 kh\u00e1i ni\u1ec7m l\u00e0m n\u00ean t\u00ean g\u1ecdi LangChain. Chains cho ph\u00e9p b\u1ea1n k\u1ebft n\u1ed1i nhi\u1ec1u b\u01b0\u1edbc x\u1eed l\u00fd l\u1ea1i v\u1edbi nhau. M\u1ed9t chain \u0111\u01a1n gi\u1ea3n g\u1ed3m: <em>L\u1ea5y \u0111\u1ea7u v\u00e0o -&gt; \u0110\u1ecbnh d\u1ea1ng b\u1eb1ng Prompt Template -&gt; G\u1eedi cho Model -&gt; Nh\u1eadn k\u1ebft qu\u1ea3<\/em>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tuy nhi\u00ean, s\u1ee9c m\u1ea1nh th\u1ef1c s\u1ef1 n\u1eb1m \u1edf vi\u1ec7c k\u1ebft n\u1ed1i c\u00e1c chain ph\u1ee9c t\u1ea1p h\u01a1n: l\u1ea5y k\u1ebft qu\u1ea3 c\u1ee7a chain n\u00e0y l\u00e0m \u0111\u1ea7u v\u00e0o cho chain kia, t\u1ea1o ra m\u1ed9t quy tr\u00ecnh (workflow) t\u1ef1 \u0111\u1ed9ng h\u00f3a ph\u1ee9c t\u1ea1p.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">T\u1eeb b\u1ea3n 1.0, c\u00e1c l\u1edbp chain d\u1ef1ng s\u1eb5n nh\u01b0 <code>LLMChain<\/code> n\u1eb1m trong g\u00f3i <code>langchain-classic<\/code>. Code m\u1edbi th\u01b0\u1eddng gh\u00e9p c\u00e1c b\u01b0\u1edbc b\u1eb1ng h\u00e0m Python th\u00f4ng th\u01b0\u1eddng, ho\u1eb7c d\u00f9ng LangGraph khi lu\u1ed3ng c\u1ea7n r\u1ebd nh\u00e1nh v\u00e0 l\u1eb7p.<\/p>\n\n\n\n<h3 id=\"4._Retrieval_(Truy_xu\u1ea5t):_Cho_ph\u00e9p_LLM_&#8220;\u0111\u1ecdc&#8221;_d\u1eef_li\u1ec7u_c\u1ee7a_b\u1ea1n\">4. Retrieval (Truy xu\u1ea5t): Cho ph\u00e9p LLM &#8220;\u0111\u1ecdc&#8221; d\u1eef li\u1ec7u c\u1ee7a b\u1ea1n<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0110\u00e2y l\u00e0 th\u00e0nh ph\u1ea7n gi\u00fap gi\u1ea3i quy\u1ebft v\u1ea5n \u0111\u1ec1 &#8220;m\u00f9 th\u00f4ng tin&#8221; c\u1ee7a LLM. Retrieval l\u00e0 ph\u1ea7n ch\u00ednh c\u1ee7a k\u1ef9 thu\u1eadt <strong><a href=\"https:\/\/tino.vn\/blog\/rag-la-gi\/\">RAG (Retrieval-Augmented Generation)<\/a><\/strong> v\u00e0 g\u1ed3m:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Document Loaders (B\u1ed9 t\u1ea3i t\u00e0i li\u1ec7u):<\/strong> &#8220;\u0110\u1ecdc&#8221; d\u1eef li\u1ec7u t\u1eeb nhi\u1ec1u ngu\u1ed3n (PDF, .txt, website, c\u01a1 s\u1edf d\u1eef li\u1ec7u&#8230;).<\/li>\n\n\n<li><strong>Document Transformers (B\u1ed9 bi\u1ebfn \u0111\u1ed5i):<\/strong> &#8220;C\u1eaft nh\u1ecf&#8221; (chunking) c\u00e1c t\u00e0i li\u1ec7u l\u1edbn th\u00e0nh c\u00e1c \u0111o\u1ea1n nh\u1ecf h\u01a1n \u0111\u1ec3 LLM d\u1ec5 &#8220;ti\u00eau h\u00f3a&#8221;.<\/li>\n\n\n<li><strong>Vector Stores (Kho l\u01b0u tr\u1eef Vector):<\/strong> N\u01a1i l\u01b0u tr\u1eef c\u00e1c \u0111o\u1ea1n t\u00e0i li\u1ec7u \u0111\u00e3 \u0111\u01b0\u1ee3c &#8220;vector h\u00f3a&#8221; (b\u1eb1ng Embedding Models).<\/li>\n\n\n<li><strong>Retrievers (B\u1ed9 truy xu\u1ea5t):<\/strong> Khi c\u00f3 c\u00e2u h\u1ecfi, b\u1ed9 truy xu\u1ea5t s\u1ebd nhanh ch\u00f3ng t\u00ecm ki\u1ebfm trong kho vector \u0111\u1ec3 l\u1ea5y ra c\u00e1c \u0111o\u1ea1n t\u00e0i li\u1ec7u g\u1ea7n ngh\u0129a v\u1edbi c\u00e2u h\u1ecfi v\u00e0 cung c\u1ea5p ch\u00fang cho LLM l\u00e0m ng\u1eef c\u1ea3nh.<\/li>\n<\/ul>\n\n\n\n<h3 id=\"5._Agents_(T\u00e1c_t\u1eed):_Trao_quy\u1ec1n_cho_LLM_t\u1ef1_suy_ngh\u0129_v\u00e0_h\u00e0nh_\u0111\u1ed9ng\">5. Agents (T\u00e1c t\u1eed): Trao quy\u1ec1n cho LLM t\u1ef1 suy ngh\u0129 v\u00e0 h\u00e0nh \u0111\u1ed9ng<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u0110\u00e2y l\u00e0 th\u00e0nh ph\u1ea7n linh ho\u1ea1t nh\u01b0ng c\u0169ng kh\u00f3 ki\u1ec3m so\u00e1t h\u01a1n c\u1ea3. N\u1ebfu &#8220;Chain&#8221; l\u00e0 m\u1ed9t quy tr\u00ecnh b\u1ea1n \u0111\u1ecbnh s\u1eb5n (b\u01b0\u1edbc 1, 2, 3), th\u00ec &#8220;Agent&#8221; l\u00e0 m\u1ed9t h\u1ec7 th\u1ed1ng m\u00e0 b\u1ea1n <strong>trao quy\u1ec1n cho LLM t\u1ef1 quy\u1ebft \u0111\u1ecbnh<\/strong> ph\u1ea3i l\u00e0m g\u00ec.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">B\u1ea1n cung c\u1ea5p cho Agent m\u1ed9t <strong>m\u1ee5c ti\u00eau<\/strong> (v\u00ed d\u1ee5: &#8220;Th\u1eddi ti\u1ebft \u1edf TP. H\u1ed3 Ch\u00ed Minh ng\u00e0y mai th\u1ebf n\u00e0o v\u00e0 gi\u00e1 c\u1ed5 phi\u1ebfu VinFast h\u00f4m nay bao nhi\u00eau?&#8221;) v\u00e0 m\u1ed9t <strong>b\u1ed9 c\u00f4ng c\u1ee5 (Tools)<\/strong> (v\u00ed d\u1ee5: <em>Tool 1: T\u00ecm ki\u1ebfm Google<\/em>, <em>Tool 2: API th\u1eddi ti\u1ebft<\/em>, <em>Tool 3: API ch\u1ee9ng kho\u00e1n<\/em>).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Agent s\u1ebd s\u1eed d\u1ee5ng LLM l\u00e0m &#8220;b\u1ed9 n\u00e3o&#8221; \u0111\u1ec3 suy lu\u1eadn: &#8220;\u00c0, v\u1edbi c\u00e2u n\u00e0y, t\u00f4i c\u1ea7n d\u00f9ng API th\u1eddi ti\u1ebft cho v\u1ebf \u0111\u1ea7u, v\u00e0 API ch\u1ee9ng kho\u00e1n cho v\u1ebf sau&#8221;, sau \u0111\u00f3 n\u00f3 t\u1ef1 g\u1ecdi c\u00e1c tool \u0111\u00f3 v\u00e0 t\u1ed5ng h\u1ee3p c\u00e2u tr\u1ea3 l\u1eddi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u1ede b\u1ea3n 1.x, agent \u0111\u01b0\u1ee3c t\u1ea1o b\u1eb1ng <code>create_agent<\/code>, xem v\u00ed d\u1ee5 \u1edf m\u1ee5c b\u00ean d\u01b0\u1edbi. Agent c\u00f3 th\u1ec3 d\u00f9ng tool t\u1eeb <a href=\"https:\/\/tino.vn\/blog\/mcp-la-gi\/\">MCP server<\/a> th\u00f4ng qua g\u00f3i adapter, n\u00ean kh\u00f4ng ph\u1ea3i vi\u1ebft l\u1ea1i t\u00edch h\u1ee3p cho t\u1eebng d\u1ecbch v\u1ee5.<\/p>\n\n\n\n<h3 id=\"6._Memory_(B\u1ed9_nh\u1edb):_Gi\u00fap_Chatbot_&#8220;nh\u1edb&#8221;\">6. Memory (B\u1ed9 nh\u1edb): Gi\u00fap Chatbot &#8220;nh\u1edb&#8221;<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">V\u1ec1 c\u01a1 b\u1ea3n, LLM l\u00e0 \u201ckh\u00f4ng tr\u1ea1ng th\u00e1i\u201d (stateless), t\u1ee9c l\u00e0 ch\u00fang qu\u00ean ngay l\u1eadp t\u1ee9c cu\u1ed9c h\u1ed9i tho\u1ea1i tr\u01b0\u1edbc \u0111\u00f3. Th\u00e0nh ph\u1ea7n <strong>Memory<\/strong> c\u1ee7a LangChain gi\u1ea3i quy\u1ebft \u0111i\u1ec1u n\u00e0y. N\u00f3 cung c\u1ea5p m\u1ed9t c\u00e1ch th\u1ee9c \u0111\u01a1n gi\u1ea3n \u0111\u1ec3 <strong>l\u01b0u tr\u1eef v\u00e0 truy xu\u1ea5t l\u1ecbch s\u1eed tr\u00f2 chuy\u1ec7n<\/strong>, sau \u0111\u00f3 t\u1ef1 \u0111\u1ed9ng ch\u00e8n c\u00e1c tin nh\u1eafn c\u0169 v\u00e0o b\u1ed1i c\u1ea3nh (context) c\u1ee7a c\u00e2u h\u1ecfi m\u1edbi. \u1ede b\u1ea3n 1.x, tr\u00ed nh\u1edb ng\u1eafn h\u1ea1n \u0111\u01b0\u1ee3c l\u01b0u b\u1eb1ng checkpointer theo t\u1eebng <code>thread_id<\/code> (m\u1ed7i cu\u1ed9c h\u1ed9i tho\u1ea1i m\u1ed9t m\u00e3).<\/p>\n\n\n\n<h2 id=\"LangChain_ho\u1ea1t_\u0111\u1ed9ng_nh\u01b0_th\u1ebf_n\u00e0o?_(v\u00ed_d\u1ee5_minh_h\u1ecda)\">LangChain ho\u1ea1t \u0111\u1ed9ng nh\u01b0 th\u1ebf n\u00e0o? (v\u00ed d\u1ee5 minh h\u1ecda)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">LangChain ho\u1ea1t \u0111\u1ed9ng theo lu\u1ed3ng: n\u1ea1p d\u1eef li\u1ec7u, bi\u1ebfn d\u1eef li\u1ec7u th\u00e0nh d\u1ea1ng model d\u00f9ng \u0111\u01b0\u1ee3c, r\u1ed3i m\u1ed7i l\u1ea7n c\u00f3 c\u00e2u h\u1ecfi th\u00ec l\u1ea5y \u0111\u00fang ph\u1ea7n li\u00ean quan gh\u00e9p v\u00e0o prompt g\u1eedi cho LLM. V\u00ed d\u1ee5 d\u01b0\u1edbi \u0111\u00e2y d\u1ef1ng chatbot h\u1ecfi \u0111\u00e1p tr\u00ean m\u1ed9t file PDF d\u00e0i, chia th\u00e0nh hai giai \u0111o\u1ea1n: l\u1eadp ch\u1ec9 m\u1ee5c v\u00e0 tr\u1ea3 l\u1eddi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Gi\u1ea3 s\u1eed b\u1ea1n c\u00f3 m\u1ed9t file PDF 200 trang v\u1ec1 lu\u1eadt t\u00e0i ch\u00ednh v\u00e0 mu\u1ed1n h\u1ecfi: &#8220;<em>M\u1ee9c ph\u1ea1t t\u1ed1i \u0111a cho h\u00e0nh vi X l\u00e0 bao nhi\u00eau?<\/em>&#8221; LLM kh\u00f4ng th\u1ec3 t\u1ef1 \u0111\u1ecdc file PDF n\u00e0y, v\u00ec v\u1eady n\u00f3 kh\u00f4ng th\u1ec3 tr\u1ea3 l\u1eddi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u0110\u00e2y l\u00e0 c\u00e1ch LangChain ho\u1ea1t \u0111\u1ed9ng, chia l\u00e0m 2 giai \u0111o\u1ea1n:<\/p>\n\n\n\n<h3 id=\"Giai_\u0111o\u1ea1n_1:_&#8220;H\u1ecdc&#8221;_t\u00e0i_li\u1ec7u_(Indexing)\">Giai \u0111o\u1ea1n 1: &#8220;H\u1ecdc&#8221; t\u00e0i li\u1ec7u (Indexing)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Giai \u0111o\u1ea1n n\u00e0y gi\u1ed1ng nh\u01b0 vi\u1ec7c b\u1ea1n &#8220;d\u1ea1y&#8221; cho h\u1ec7 th\u1ed1ng v\u1ec1 d\u1eef li\u1ec7u c\u1ee7a m\u00ecnh. N\u00f3 ch\u1ec9 ch\u1ea1y m\u1ed9t l\u1ea7n khi b\u1ea1n t\u1ea3i file l\u00ean.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>T\u1ea3i t\u00e0i li\u1ec7u (Load):<\/strong> LangChain s\u1eed d\u1ee5ng DocumentLoader \u0111\u1ec3 &#8220;\u0111\u1ecdc&#8221; to\u00e0n b\u1ed9 n\u1ed9i dung file PDF c\u1ee7a b\u1ea1n.<\/li>\n\n\n<li><strong>Chia nh\u1ecf (Split):<\/strong> File PDF qu\u00e1 l\u1edbn \u0111\u1ec3 \u0111\u01b0a v\u00e0o LLM c\u00f9ng m\u1ed9t l\u00fac (gi\u1edbi h\u1ea1n context). LangChain d\u00f9ng TextSplitter \u0111\u1ec3 &#8220;c\u1eaft&#8221; 200 trang \u0111\u00f3 th\u00e0nh h\u00e0ng tr\u0103m \u0111o\u1ea1n nh\u1ecf (v\u00ed d\u1ee5: m\u1ed7i \u0111o\u1ea1n 500 ch\u1eef) nh\u01b0ng v\u1eabn gi\u1eef \u0111\u01b0\u1ee3c ng\u1eef ngh\u0129a.<\/li>\n\n\n<li><strong>Vector h\u00f3a (Embed):<\/strong> LangChain d\u00f9ng m\u1ed9t Embedding Model \u0111\u1ec3 bi\u1ebfn m\u1ed7i \u0111o\u1ea1n v\u0103n b\u1ea3n (ch\u1eef) th\u00e0nh m\u1ed9t d\u00e3y s\u1ed1 (g\u1ecdi l\u00e0 vector). Nh\u1eefng vector n\u00e0y \u0111\u1ea1i di\u1ec7n cho <em>\u00fd ngh\u0129a<\/em> ng\u1eef ngh\u0129a c\u1ee7a \u0111o\u1ea1n v\u0103n \u0111\u00f3. Nh\u1eefng \u0111o\u1ea1n v\u0103n c\u00f3 \u00fd ngh\u0129a gi\u1ed1ng nhau s\u1ebd c\u00f3 vector g\u1ea7n gi\u1ed1ng nhau.<\/li>\n\n\n<li><strong>L\u01b0u tr\u1eef (Store):<\/strong> T\u1ea5t c\u1ea3 c\u00e1c vector n\u00e0y \u0111\u01b0\u1ee3c l\u01b0u v\u00e0o m\u1ed9t c\u01a1 s\u1edf d\u1eef li\u1ec7u \u0111\u1eb7c bi\u1ec7t g\u1ecdi l\u00e0 VectorStore (kho l\u01b0u tr\u1eef vector). \u0110\u00e2y ch\u00ednh l\u00e0 &#8220;b\u1ed9 nh\u1edb&#8221; v\u1ec1 t\u00e0i li\u1ec7u c\u1ee7a b\u1ea1n.<\/li>\n<\/ol>\n\n\n\n<h3 id=\"Giai_\u0111o\u1ea1n_2:_&#8220;Tr\u1ea3_l\u1eddi&#8221;_c\u00e2u_h\u1ecfi_(Querying)\">Giai \u0111o\u1ea1n 2: &#8220;Tr\u1ea3 l\u1eddi&#8221; c\u00e2u h\u1ecfi (Querying)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Giai \u0111o\u1ea1n n\u00e0y x\u1ea3y ra m\u1ed7i khi ng\u01b0\u1eddi d\u00f9ng \u0111\u1eb7t c\u00e2u h\u1ecfi.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Nh\u1eadn c\u00e2u h\u1ecfi:<\/strong> Ng\u01b0\u1eddi d\u00f9ng g\u00f5: &#8220;<em>M\u1ee9c ph\u1ea1t t\u1ed1i \u0111a cho h\u00e0nh vi X l\u00e0 bao nhi\u00eau?<\/em>&#8221;<\/li>\n\n\n<li><strong>Vector h\u00f3a c\u00e2u h\u1ecfi:<\/strong> LangChain l\u1ea5y ch\u00ednh x\u00e1c Embedding Model (\u1edf b\u01b0\u1edbc 3) \u0111\u1ec3 bi\u1ebfn c\u00e2u h\u1ecfi n\u00e0y th\u00e0nh m\u1ed9t vector.<\/li>\n\n\n<li><strong>T\u00ecm ki\u1ebfm (Retrieve):<\/strong> LangChain so s\u00e1nh vector c\u1ee7a c\u00e2u h\u1ecfi v\u1edbi t\u1ea5t c\u1ea3 c\u00e1c vector trong VectorStore (\u1edf b\u01b0\u1edbc 4 b\u00ean tr\u00ean) v\u00e0 &#8220;r\u00fat&#8221; ra, v\u00ed d\u1ee5, 5 \u0111o\u1ea1n v\u0103n b\u1ea3n g\u1ed1c (chunks) trong file PDF c\u00f3 \u00fd ngh\u0129a g\u1ea7n nh\u1ea5t v\u1edbi c\u00e2u h\u1ecfi. \u0110\u00e2y ch\u00ednh l\u00e0 &#8220;s\u1ef1 truy xu\u1ea5t&#8221; (Retrieval).<\/li>\n\n\n<li><strong>T\u1ea1o c\u00e2u l\u1ec7nh (Prompt):<\/strong> LangChain t\u1ef1 \u0111\u1ed9ng t\u1ea1o m\u1ed9t c\u00e2u l\u1ec7nh (prompt) m\u1edbi cho LLM theo khu\u00f4n m\u1eabu: &#8220;<code>D\u1ef1a v\u00e0o b\u1ed1i c\u1ea3nh (context) d\u01b0\u1edbi \u0111\u00e2y: [D\u00e1n v\u00e0o \u0111o\u1ea1n v\u0103n 1 v\u1eeba t\u00ecm \u0111\u01b0\u1ee3c] [D\u00e1n v\u00e0o \u0111o\u1ea1n v\u0103n 2 v\u1eeba t\u00ecm \u0111\u01b0\u1ee3c] [D\u00e1n v\u00e0o \u0111o\u1ea1n v\u0103n 3, 4, 5...], h\u00e3y tr\u1ea3 l\u1eddi c\u00e2u h\u1ecfi sau: M\u1ee9c ph\u1ea1t t\u1ed1i \u0111a cho h\u00e0nh vi X l\u00e0 bao nhi\u00eau?<\/code>&#8220;<\/li>\n\n\n<li><strong>H\u1ecfi LLM (Query LLM):<\/strong> LangChain g\u1eedi c\u00e2u l\u1ec7nh (prompt) &#8220;si\u00eau chi ti\u1ebft&#8221; n\u00e0y \u0111\u1ebfn cho LLM.<\/li>\n\n\n<li><strong>Tr\u1ea3 l\u1eddi:<\/strong> LLM \u0111\u1ecdc b\u1ed1i c\u1ea3nh \u0111\u01b0\u1ee3c cung c\u1ea5p (ch\u1ec9 v\u00e0i \u0111o\u1ea1n v\u0103n ng\u1eafn) v\u00e0 t\u1ed5ng h\u1ee3p c\u00e2u tr\u1ea3 l\u1eddi d\u1ef1a tr\u00ean \u0111\u00fang c\u00e1c \u0111o\u1ea1n \u0111\u00f3. Sau \u0111\u00f3 LLM s\u1ebd tr\u1ea3 l\u1eddi: &#8220;Theo t\u00e0i li\u1ec7u, m\u1ee9c ph\u1ea1t t\u1ed1i \u0111a cho h\u00e0nh vi X l\u00e0&#8230;&#8221;<\/li>\n<\/ol>\n\n\n\n<h2 id=\"V\u00ed_d\u1ee5:_t\u1ea1o_agent_\u0111\u1ea7u_ti\u00ean_v\u1edbi_LangChain_1.x\">V\u00ed d\u1ee5: t\u1ea1o agent \u0111\u1ea7u ti\u00ean v\u1edbi LangChain 1.x<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">V\u00ed d\u1ee5 d\u01b0\u1edbi \u0111\u00e2y theo <a href=\"https:\/\/docs.langchain.com\/oss\/python\/langchain\/quickstart\" target=\"_blank\" rel=\"noopener nofollow\">quickstart ch\u00ednh th\u1ee9c<\/a>: c\u00e0i th\u01b0 vi\u1ec7n, khai b\u00e1o m\u1ed9t tool l\u00e0 h\u00e0m Python, r\u1ed3i t\u1ea1o agent b\u1eb1ng <code>create_agent<\/code>. Code \u0111\u00e3 ch\u1ea1y th\u1eed tr\u00ean langchain 1.4.7 v\u1edbi Python 3.13; b\u1ea1n c\u1ea7n m\u1ed9t API key c\u1ee7a h\u00e3ng model v\u00e0 \u0111\u1ed5i t\u00ean model sang model t\u00e0i kho\u1ea3n b\u1ea1n \u0111\u01b0\u1ee3c d\u00f9ng.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python -m venv .venv\nsource .venv\/bin\/activate        # Windows: .venv\\Scripts\\activate\npip install -U langchain \"langchain[openai]\"\nexport OPENAI_API_KEY=\"...\"        # Windows PowerShell: $env:OPENAI_API_KEY=\"...\"<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>from langchain.agents import create_agent\nfrom langgraph.checkpoint.memory import InMemorySaver\n\ndef get_weather(city: str) -&gt; str:\n    \"\"\"Tr\u1ea3 v\u1ec1 th\u1eddi ti\u1ebft c\u1ee7a m\u1ed9t th\u00e0nh ph\u1ed1 (gi\u1ea3 l\u1eadp).\"\"\"\n    return f\"Tr\u1eddi n\u1eafng \u1edf {city}.\"\n\nagent = create_agent(\n    model=\"openai:gpt-6-luna\",      # d\u1ea1ng \"h\u00e3ng:model\", \u0111\u1ed5i theo model b\u1ea1n d\u00f9ng\n    tools=[get_weather],\n    system_prompt=\"B\u1ea1n l\u00e0 tr\u1ee3 l\u00fd tr\u1ea3 l\u1eddi ng\u1eafn g\u1ecdn b\u1eb1ng ti\u1ebfng Vi\u1ec7t.\",\n    checkpointer=InMemorySaver(),    # nh\u1edb h\u1ed9i tho\u1ea1i theo thread_id\n)\n\nconfig = {\"configurable\": {\"thread_id\": \"khach-01\"}}\nresult = agent.invoke({\"messages\": [{\"role\": \"user\", \"content\": \"Th\u1eddi ti\u1ebft \u0110\u00e0 N\u1eb5ng h\u00f4m nay?\"}]}, config)\nprint(result[\"messages\"][-1].content)<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">T\u00ean model trong code l\u00e0 <code>gpt-6-luna<\/code>, model gi\u00e1 th\u1ea5p c\u1ee7a OpenAI theo <a href=\"https:\/\/developers.openai.com\/api\/docs\/models\" target=\"_blank\" rel=\"noopener nofollow\">trang models<\/a> (\u0111\u1ed1i chi\u1ebfu 29\/10\/2026). Mu\u1ed1n d\u00f9ng Claude hay Gemini, c\u00e0i g\u00f3i t\u01b0\u01a1ng \u1ee9ng v\u00e0 \u0111\u1ed5i chu\u1ed7i model, v\u00ed d\u1ee5 <code>anthropic:...<\/code> ho\u1eb7c <code>google_genai:...<\/code>. Model ID \u0111\u1ed5i kh\u00e1 nhanh; xem danh s\u00e1ch hi\u1ec7n h\u00e0nh \u1edf <a href=\"https:\/\/tino.vn\/blog\/model-cua-openai\/\">c\u00e1c model c\u1ee7a OpenAI<\/a>, <a href=\"https:\/\/tino.vn\/blog\/model-cua-claude\/\">c\u00e1c model Claude<\/a>.<\/p>\n\n\n\n<h3 id=\"B\u1ea3o_m\u1eadt_API_key_khi_ch\u1ea1y_LangChain\">B\u1ea3o m\u1eadt API key khi ch\u1ea1y LangChain<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0110\u1ec3 key trong bi\u1ebfn m\u00f4i tr\u01b0\u1eddng ho\u1eb7c tr\u00ecnh qu\u1ea3n l\u00fd secret; kh\u00f4ng ghi th\u1eb3ng v\u00e0o code, kh\u00f4ng commit file <code>.env<\/code> l\u00ean repo c\u00f4ng khai, kh\u00f4ng \u0111\u01b0a key v\u00e0o code ch\u1ea1y tr\u00ean tr\u00ecnh duy\u1ec7t hay app.<\/li>\n\n\n<li>\u0110\u1eb7t gi\u1edbi h\u1ea1n chi ti\u00eau (spend limit) trong console c\u1ee7a h\u00e3ng model. Agent t\u1ef1 l\u1eb7p g\u1ecdi tool c\u00f3 th\u1ec3 \u0111\u1ed1t token nhanh h\u01a1n b\u1ea1n ngh\u0129.<\/li>\n\n\n<li>Nghi l\u1ed9 key th\u00ec thu h\u1ed3i (revoke) v\u00e0 t\u1ea1o key m\u1edbi ngay, sau \u0111\u00f3 ki\u1ec3m tra trang Usage.<\/li>\n\n\n<li>C\u00e1ch l\u01b0u credential an to\u00e0n trong c\u00f4ng c\u1ee5 workflow: xem <a href=\"https:\/\/tino.vn\/blog\/bao-mat-credentials-va-api-keys-trong-n8n\/\">b\u1ea3o m\u1eadt credentials v\u00e0 API key trong n8n<\/a>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Khi agent c\u1ea7n ch\u1ea1y nh\u01b0 m\u1ed9t d\u1ecbch v\u1ee5 24\/7 thay v\u00ec tr\u00ean m\u00e1y c\u00e1 nh\u00e2n, xem c\u00e1c l\u1ef1a ch\u1ecdn \u1edf b\u00e0i <a href=\"https:\/\/tino.vn\/blog\/vps-chay-ai-agent\/\">ch\u1ecdn VPS ch\u1ea1y AI agent<\/a>.<\/p>\n\n\n\n<h2 id=\"\u01afu_&#8211;_nh\u01b0\u1ee3c_\u0111i\u1ec3m_khi_s\u1eed_d\u1ee5ng_LangChain\">\u01afu &#8211; nh\u01b0\u1ee3c \u0111i\u1ec3m khi s\u1eed d\u1ee5ng LangChain<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">LangChain ti\u1ebft ki\u1ec7m th\u1eddi gian \u1edf nh\u1eefng vi\u1ec7c l\u1eb7p l\u1ea1i nh\u01b0 g\u1ecdi nhi\u1ec1u h\u00e3ng model, n\u1ea1p t\u00e0i li\u1ec7u, g\u1ecdi tool v\u00e0 l\u01b0u h\u1ed9i tho\u1ea1i, \u0111\u1ed5i l\u1ea1i l\u00e0 th\u00eam m\u1ed9t l\u1edbp tr\u1eebu t\u01b0\u1ee3ng ph\u1ea3i h\u1ecdc v\u00e0 theo d\u00f5i. B\u1ea3ng \u01b0u nh\u01b0\u1ee3c d\u01b0\u1edbi \u0111\u00e2y gi\u00fap b\u1ea1n c\u00e2n nh\u1eafc tr\u01b0\u1edbc khi \u0111\u01b0a LangChain v\u00e0o d\u1ef1 \u00e1n.<\/p>\n\n\n\n<h3 id=\"\u01afu_\u0111i\u1ec3m\">\u01afu \u0111i\u1ec3m<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>H\u1ec7 sinh th\u00e1i l\u1edbn:<\/strong> T\u00edch h\u1ee3p s\u1eb5n h\u00e0ng tr\u0103m m\u00f4 h\u00ecnh (OpenAI, Google, Claude&#8230;), c\u00f4ng c\u1ee5 (API, Google Search) v\u00e0 c\u01a1 s\u1edf d\u1eef li\u1ec7u.<\/li>\n\n\n<li><strong>T\u0103ng t\u1ed1c ph\u00e1t tri\u1ec3n:<\/strong> Gi\u00fap x\u00e2y d\u1ef1ng c\u00e1c \u1ee9ng d\u1ee5ng ph\u1ee9c t\u1ea1p (nh\u01b0 &#8220;chat v\u1edbi PDF&#8221; &#8211; RAG) nhanh h\u01a1n t\u1ef1 vi\u1ebft.<\/li>\n\n\n<li><strong>Linh ho\u1ea1t:<\/strong> Cho ph\u00e9p d\u1ec5 d\u00e0ng &#8220;tr\u00e1o \u0111\u1ed5i&#8221; c\u00e1c th\u00e0nh ph\u1ea7n (v\u00ed d\u1ee5: \u0111\u1ed5i m\u00f4 h\u00ecnh, \u0111\u1ed5i c\u01a1 s\u1edf d\u1eef li\u1ec7u vector) m\u00e0 kh\u00f4ng c\u1ea7n vi\u1ebft l\u1ea1i logic.<\/li>\n\n\n<li><strong>H\u1ed7 tr\u1ee3 Agents:<\/strong> C\u00f3 s\u1eb5n khung \u0111\u1ec3 x\u00e2y d\u1ef1ng c\u00e1c &#8220;T\u00e1c t\u1eed AI&#8221; t\u1ef1 ch\u1ee7, c\u00f3 kh\u1ea3 n\u0103ng suy ngh\u0129 v\u00e0 s\u1eed d\u1ee5ng c\u00f4ng c\u1ee5 \u0111\u1ec3 h\u00e0nh \u0111\u1ed9ng.<\/li>\n\n\n<li><strong>C\u1ed9ng \u0111\u1ed3ng m\u1ea1nh:<\/strong> Nh\u1edd \u0111\u01b0\u1ee3c s\u1eed d\u1ee5ng r\u1ed9ng r\u00e3i trong l\u0129nh v\u1ef1c AI, LangChain c\u00f3 c\u1ed9ng \u0111\u1ed3ng \u0111\u00f3ng g\u00f3p m\u1ea1nh, nhi\u1ec1u v\u00ed d\u1ee5 th\u1ef1c t\u1ebf v\u00e0 t\u00e0i nguy\u00ean h\u1ecdc t\u1eadp.<\/li>\n<\/ul>\n\n\n\n<h3 id=\"Nh\u01b0\u1ee3c_\u0111i\u1ec3m\">Nh\u01b0\u1ee3c \u0111i\u1ec3m<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Kh\u00e1 ph\u1ee9c t\u1ea1p:<\/strong> \u0110\u01b0\u1eddng cong h\u1ecdc t\u1eadp r\u1ea5t d\u1ed1c v\u00e0 kh\u00f3 cho ng\u01b0\u1eddi m\u1edbi b\u1eaft \u0111\u1ea7u.<\/li>\n\n\n<li><strong>Kh\u00f3 g\u1ee1 l\u1ed7i:<\/strong> Do t\u00ednh tr\u1eebu t\u01b0\u1ee3ng cao, khi m\u1ed9t &#8220;chain&#8221; b\u1ecb l\u1ed7i, vi\u1ec7c t\u00ecm ra nguy\u00ean nh\u00e2n g\u1ed1c r\u1ec5 r\u1ea5t kh\u00f3 kh\u0103n.<\/li>\n\n\n<li><strong>Thi\u1ebfu \u1ed5n \u0111\u1ecbnh:<\/strong> C\u00e1c Agents th\u01b0\u1eddng d\u1ef1a v\u00e0o vi\u1ec7c LLM tr\u1ea3 l\u1eddi \u0111\u00fang \u0111\u1ecbnh d\u1ea1ng. Ch\u1ec9 c\u1ea7n LLM thay \u0111\u1ed5i m\u1ed9t ch\u00fat, logic c\u00f3 th\u1ec3 h\u1ecfng ngay l\u1eadp t\u1ee9c.<\/li>\n\n\n<li><strong>Thay \u0111\u1ed5i li\u00ean t\u1ee5c:<\/strong> Framework c\u1eadp nh\u1eadt nhanh; b\u1ea3n 1.0 (10\/2025) \u0111\u1ed5i nhi\u1ec1u API n\u00ean code d\u00f9ng <code>LLMChain<\/code>, <code>AgentExecutor<\/code> ph\u1ea3i chuy\u1ec3n sang <code>create_agent<\/code> ho\u1eb7c g\u00f3i classic.<\/li>\n\n\n<li><strong>\u0110\u1ed9 tr\u1ec5 v\u00e0 chi ph\u00ed:<\/strong> C\u00e1c chain ph\u1ee9c t\u1ea1p th\u01b0\u1eddng y\u00eau c\u1ea7u nhi\u1ec1u l\u1ea7n g\u1ecdi API \u0111\u1ebfn LLM, g\u00e2y ch\u1eadm (latency) v\u00e0 t\u1ed1n k\u00e9m chi ph\u00ed.<\/li>\n\n\n<li><strong>Hi\u1ec7u su\u1ea5t ch\u01b0a t\u1ed1i \u01b0u cho m\u1ecdi tr\u01b0\u1eddng h\u1ee3p: <\/strong>M\u1ed9t s\u1ed1 t\u00e1c v\u1ee5 nh\u1ecf ho\u1eb7c m\u00f4 h\u00ecnh \u0111\u01a1n gi\u1ea3n c\u00f3 th\u1ec3 ch\u1ea1y ch\u1eadm h\u01a1n n\u1ebfu s\u1eed d\u1ee5ng LangChain v\u00ec framework n\u00e0y c\u00f3 nhi\u1ec1u l\u1edbp x\u1eed l\u00fd trung gian.<\/li>\n<\/ul>\n\n\n\n<h3 id=\"Khi_n\u00e0o_kh\u00f4ng_n\u00ean_d\u00f9ng_LangChain?\">Khi n\u00e0o kh\u00f4ng n\u00ean d\u00f9ng LangChain?<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u1ee8ng d\u1ee5ng ch\u1ec9 g\u1ecdi model m\u1ed9t l\u1ea7n m\u1ed7i y\u00eau c\u1ea7u, kh\u00f4ng tool, kh\u00f4ng truy xu\u1ea5t t\u00e0i li\u1ec7u: g\u1ecdi SDK c\u1ee7a h\u00e3ng tr\u1ef1c ti\u1ebfp s\u1ebd \u00edt ph\u1ee5 thu\u1ed9c h\u01a1n.<\/li>\n\n\n<li>B\u1ea1n c\u1ea7n ki\u1ec3m so\u00e1t t\u1eebng request, \u0111\u1ed9 tr\u1ec5 th\u1ea5p v\u00e0 \u00edt l\u1edbp trung gian: m\u1ed7i l\u1edbp tr\u1eebu t\u01b0\u1ee3ng th\u00eam v\u00e0o l\u00e0 th\u00eam m\u1ed9t ch\u1ed7 ph\u1ea3i g\u1ee1 l\u1ed7i.<\/li>\n\n\n<li>\u0110\u1ed9i ng\u0169 l\u00e0m ch\u1ee7 y\u1ebfu b\u1eb1ng C# ho\u1eb7c Java: LangChain ch\u1ec9 c\u00f3 Python v\u00e0 JavaScript, n\u00ean c\u00e2n nh\u1eafc framework h\u1ed7 tr\u1ee3 ng\u00f4n ng\u1eef c\u1ee7a b\u1ea1n (xem b\u1ea3ng so s\u00e1nh b\u00ean d\u01b0\u1edbi).<\/li>\n\n\n<li>Lu\u1ed3ng c\u00f3 nhi\u1ec1u nh\u00e1nh, v\u00f2ng l\u1eb7p, c\u1ea7n d\u1eebng ch\u1edd ng\u01b0\u1eddi duy\u1ec7t: v\u1eabn d\u00f9ng \u0111\u01b0\u1ee3c LangChain, nh\u01b0ng n\u00ean l\u00e0m vi\u1ec7c tr\u1ef1c ti\u1ebfp v\u1edbi LangGraph \u0111\u1ec3 th\u1ea5y r\u00f5 t\u1eebng b\u01b0\u1edbc.<\/li>\n<\/ul>\n\n\n\n<h2 id=\"\u1ee8ng_d\u1ee5ng_th\u1ef1c_t\u1ebf_c\u1ee7a_LangChain\">\u1ee8ng d\u1ee5ng th\u1ef1c t\u1ebf c\u1ee7a LangChain<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">LangChain th\u01b0\u1eddng \u0111\u01b0\u1ee3c d\u00f9ng \u1edf c\u00e1c \u1ee9ng d\u1ee5ng c\u1ea7n LLM l\u00e0m vi\u1ec7c v\u1edbi d\u1eef li\u1ec7u ri\u00eang ho\u1eb7c h\u1ec7 th\u1ed1ng b\u00ean ngo\u00e0i: chatbot tr\u00ean t\u00e0i li\u1ec7u n\u1ed9i b\u1ed9, h\u1ecfi \u0111\u00e1p RAG, t\u00f3m t\u1eaft v\u0103n b\u1ea3n, t\u1ef1 \u0111\u1ed9ng ho\u00e1 quy tr\u00ecnh c\u00f3 AI, t\u00ecm ki\u1ebfm ng\u1eef ngh\u0129a v\u00e0 tr\u1ee3 l\u00fd l\u1eadp tr\u00ecnh. M\u1ed7i m\u1ee5c d\u01b0\u1edbi \u0111\u00e2y k\u00e8m v\u00ed d\u1ee5 c\u1ee5 th\u1ec3.<\/p>\n\n\n\n<h3 id=\"Chatbot_th\u00f4ng_minh_v\u00e0_tr\u1ee3_l\u00fd_\u1ea3o_t\u00f9y_ch\u1ec9nh\">Chatbot th\u00f4ng minh v\u00e0 tr\u1ee3 l\u00fd \u1ea3o t\u00f9y ch\u1ec9nh<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">LangChain cho ph\u00e9p b\u1ea1n t\u1ea1o chatbot c\u00f3 kh\u1ea3 n\u0103ng ghi nh\u1edb ng\u1eef c\u1ea3nh v\u00e0 hi\u1ec3u d\u1eef li\u1ec7u ri\u00eang c\u1ee7a doanh nghi\u1ec7p. <br>V\u00ed d\u1ee5:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Chatbot ch\u0103m s\u00f3c kh\u00e1ch h\u00e0ng c\u00f3 th\u1ec3 tra c\u1ee9u th\u00f4ng tin trong c\u01a1 s\u1edf d\u1eef li\u1ec7u c\u00f4ng ty.<\/li>\n\n\n<li>Tr\u1ee3 l\u00fd n\u1ed9i b\u1ed9 gi\u00fap nh\u00e2n vi\u00ean t\u00ecm t\u00e0i li\u1ec7u, b\u00e1o c\u00e1o ho\u1eb7c ch\u00ednh s\u00e1ch ch\u1ec9 trong v\u00e0i gi\u00e2y.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udc49 Nh\u1edd t\u00ednh n\u0103ng <em>Memory<\/em> v\u00e0 <em>Retrieval Augmented Generation (RAG)<\/em>, chatbot kh\u00f4ng ch\u1ec9 \u201ctr\u1ea3 l\u1eddi cho hay\u201d m\u00e0 c\u00f2n ph\u1ea3n h\u1ed3i ch\u00ednh x\u00e1c theo d\u1eef li\u1ec7u th\u1ef1c t\u1ebf.<\/p>\n\n\n\n<h3 id=\"H\u1ec7_th\u1ed1ng_h\u1ecfi_\u2013_\u0111\u00e1p_theo_t\u00e0i_li\u1ec7u_(Q&amp;A_\/_RAG)\">H\u1ec7 th\u1ed1ng h\u1ecfi \u2013 \u0111\u00e1p theo t\u00e0i li\u1ec7u (Q&amp;A \/ RAG)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u1ee8ng d\u1ee5ng ph\u1ed5 bi\u1ebfn c\u1ee7a LangChain l\u00e0 RAG (Retrieval-Augmented Generation) \u2014 c\u01a1 ch\u1ebf gi\u00fap m\u00f4 h\u00ecnh AI truy xu\u1ea5t th\u00f4ng tin th\u1eadt tr\u01b0\u1edbc khi t\u1ea1o c\u00e2u tr\u1ea3 l\u1eddi. <br>V\u00ed d\u1ee5:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>H\u1ecfi \u2013 \u0111\u00e1p theo t\u00e0i li\u1ec7u h\u01b0\u1edbng d\u1eabn k\u1ef9 thu\u1eadt.<\/li>\n\n\n<li>Tra c\u1ee9u ch\u00ednh s\u00e1ch n\u1ed9i b\u1ed9 c\u1ee7a doanh nghi\u1ec7p.<\/li>\n\n\n<li>H\u1ed7 tr\u1ee3 kh\u00e1ch h\u00e0ng d\u1ef1a tr\u00ean d\u1eef li\u1ec7u s\u1ea3n ph\u1ea9m.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">LangChain gi\u00fap t\u1ef1 \u0111\u1ed9ng ph\u00e2n t\u00edch, t\u00e1ch, l\u01b0u tr\u1eef v\u00e0 t\u00ecm ki\u1ebfm d\u1eef li\u1ec7u b\u1eb1ng vector, gi\u00fap c\u00e2u tr\u1ea3 l\u1eddi c\u1ee7a AI b\u00e1m s\u00e1t ngu\u1ed3n th\u00f4ng tin th\u1eadt h\u01a1n.<\/p>\n\n\n\n<h3 id=\"T\u00f3m_t\u1eaft_v\u00e0_ph\u00e2n_t\u00edch_v\u0103n_b\u1ea3n_t\u1ef1_\u0111\u1ed9ng\">T\u00f3m t\u1eaft v\u00e0 ph\u00e2n t\u00edch v\u0103n b\u1ea3n t\u1ef1 \u0111\u1ed9ng<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">V\u1edbi LangChain, b\u1ea1n c\u00f3 th\u1ec3 t\u1ea1o c\u00f4ng c\u1ee5 t\u1ef1 \u0111\u1ed9ng \u0111\u1ecdc v\u00e0 t\u00f3m t\u1eaft n\u1ed9i dung d\u00e0i nh\u01b0 b\u00e1o c\u00e1o, email, h\u1ee3p \u0111\u1ed3ng hay b\u00e0i vi\u1ebft nghi\u00ean c\u1ee9u. <br>\u1ee8ng d\u1ee5ng th\u1ef1c t\u1ebf:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>T\u1ed5ng h\u1ee3p n\u1ed9i dung tin t\u1ee9c theo ch\u1ee7 \u0111\u1ec1.<\/li>\n\n\n<li>T\u00f3m t\u1eaft bi\u00ean b\u1ea3n cu\u1ed9c h\u1ecdp ho\u1eb7c t\u00e0i li\u1ec7u k\u1ef9 thu\u1eadt.<\/li>\n\n\n<li>Ph\u00e2n t\u00edch \u00fd ki\u1ebfn kh\u00e1ch h\u00e0ng t\u1eeb ph\u1ea3n h\u1ed3i ho\u1eb7c review.<\/li>\n<\/ul>\n\n\n\n<h3 id=\"T\u1ef1_\u0111\u1ed9ng_h\u00f3a_quy_tr\u00ecnh_l\u00e0m_vi\u1ec7c_(Workflow_Automation)\">T\u1ef1 \u0111\u1ed9ng h\u00f3a quy tr\u00ecnh l\u00e0m vi\u1ec7c (Workflow Automation)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">K\u1ebft h\u1ee3p v\u1edbi c\u00e1c c\u00f4ng c\u1ee5 b\u00ean ngo\u00e0i (API, c\u01a1 s\u1edf d\u1eef li\u1ec7u, h\u1ec7 th\u1ed1ng CRM&#8230;), LangChain c\u00f3 th\u1ec3 gi\u00fap b\u1ea1n x\u00e2y d\u1ef1ng quy tr\u00ecnh t\u1ef1 \u0111\u1ed9ng s\u1eed d\u1ee5ng AI l\u00e0m trung t\u00e2m. <br>V\u00ed d\u1ee5:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Khi c\u00f3 email m\u1edbi \u2192 LangChain ph\u00e2n t\u00edch n\u1ed9i dung \u2192 t\u1ea1o b\u1ea3n tr\u1ea3 l\u1eddi t\u1ef1 \u0111\u1ed9ng \u2192 c\u1eadp nh\u1eadt v\u00e0o h\u1ec7 th\u1ed1ng CRM.<\/li>\n\n\n<li>Khi c\u00f3 d\u1eef li\u1ec7u s\u1ea3n ph\u1ea9m m\u1edbi \u2192 LangChain t\u1ef1 \u0111\u1ed9ng sinh m\u00f4 t\u1ea3 SEO v\u00e0 \u0111\u0103ng l\u00ean website.<\/li>\n<\/ul>\n\n\n\n<h3 id=\"C\u00f4ng_c\u1ee5_t\u00ecm_ki\u1ebfm_ng\u1eef_ngh\u0129a_(Semantic_Search)\">C\u00f4ng c\u1ee5 t\u00ecm ki\u1ebfm ng\u1eef ngh\u0129a (Semantic Search)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">LangChain h\u1ed7 tr\u1ee3 t\u00ecm ki\u1ebfm b\u1eb1ng ng\u1eef ngh\u0129a thay v\u00ec t\u1eeb kh\u00f3a, ngh\u0129a l\u00e0 AI hi\u1ec3u \u00fd \u0111\u1ecbnh ng\u01b0\u1eddi d\u00f9ng ch\u1ee9 kh\u00f4ng ch\u1ec9 kh\u1edbp ch\u1eef. <br>\u1ee8ng d\u1ee5ng:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>T\u00ecm ki\u1ebfm th\u00f4ng tin trong h\u00e0ng ngh\u00ecn file n\u1ed9i b\u1ed9.<\/li>\n\n\n<li>X\u00e2y d\u1ef1ng c\u00f4ng c\u1ee5 tra c\u1ee9u tri th\u1ee9c cho doanh nghi\u1ec7p, tr\u01b0\u1eddng h\u1ecdc, t\u1ed5 ch\u1ee9c nghi\u00ean c\u1ee9u.<\/li>\n<\/ul>\n\n\n\n<h3 id=\"Tr\u1ee3_l\u00fd_l\u1eadp_tr\u00ecnh_v\u00e0_t\u00e0i_li\u1ec7u_k\u1ef9_thu\u1eadt_(Code_Assistant)\">Tr\u1ee3 l\u00fd l\u1eadp tr\u00ecnh v\u00e0 t\u00e0i li\u1ec7u k\u1ef9 thu\u1eadt (Code Assistant)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">LangChain c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c d\u00f9ng \u0111\u1ec3 x\u00e2y d\u1ef1ng tr\u1ee3 l\u00fd h\u1ed7 tr\u1ee3 l\u1eadp tr\u00ecnh vi\u00ean, gi\u00fap:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Gi\u1ea3i th\u00edch code, g\u1ee3i \u00fd h\u00e0m, t\u00f3m t\u1eaft logic.<\/li>\n\n\n<li>T\u1ea1o t\u00e0i li\u1ec7u k\u1ef9 thu\u1eadt t\u1ef1 \u0111\u1ed9ng.<\/li>\n\n\n<li>K\u1ebft h\u1ee3p c\u00f9ng GitHub API \u0111\u1ec3 ph\u00e2n t\u00edch commit ho\u1eb7c pull request.<\/li>\n<\/ul>\n\n\n\n<h3 id=\"N\u1ec1n_t\u1ea3ng_x\u00e2y_d\u1ef1ng_\u1ee9ng_d\u1ee5ng_AI_tu\u1ef3_ch\u1ec9nh_(AI_Application_Framework)\">N\u1ec1n t\u1ea3ng x\u00e2y d\u1ef1ng \u1ee9ng d\u1ee5ng AI tu\u1ef3 ch\u1ec9nh (AI Application Framework)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">LangChain l\u00e0 <strong>b\u1ed9 khung linh ho\u1ea1t<\/strong> cho c\u00e1c startup ho\u1eb7c doanh nghi\u1ec7p mu\u1ed1n ph\u00e1t tri\u1ec3n s\u1ea3n ph\u1ea9m AI ri\u00eang \u2014 nh\u01b0 h\u1ec7 th\u1ed1ng g\u1ee3i \u00fd th\u00f4ng minh, ph\u00e2n t\u00edch d\u1eef li\u1ec7u kh\u00e1ch h\u00e0ng, hay tr\u1ee3 l\u00fd doanh nghi\u1ec7p n\u1ed9i b\u1ed9.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">N\u1ebfu b\u1ea1n mu\u1ed1n t\u1ef1 \u0111\u1ed9ng ho\u00e1 b\u1eb1ng giao di\u1ec7n k\u00e9o th\u1ea3 thay v\u00ec vi\u1ebft code, <a href=\"https:\/\/tino.vn\/blog\/n8n-la-gi\/\">n8n<\/a> c\u00f3 s\u1eb5n node AI d\u1ef1a tr\u00ean LangChain; c\u00f2n mu\u1ed1n m\u1ed9t tr\u1ee3 l\u00fd AI c\u00e1 nh\u00e2n ch\u1ea1y s\u1eb5n, xem <a href=\"https:\/\/tino.vn\/blog\/openclaw-la-gi\/\">OpenClaw<\/a>.<\/p>\n\n\n\n<h2 id=\"So_s\u00e1nh_LangChain_v\u1edbi_c\u00e1c_framework_t\u01b0\u01a1ng_t\u1ef1\">So s\u00e1nh LangChain v\u1edbi c\u00e1c framework t\u01b0\u01a1ng t\u1ef1<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">LangChain th\u01b0\u1eddng \u0111\u01b0\u1ee3c \u0111\u1eb7t c\u1ea1nh LlamaIndex, Semantic Kernel v\u00e0 Haystack v\u00ec c\u1ea3 b\u1ed1n \u0111\u1ec1u gi\u00fap d\u1ef1ng \u1ee9ng d\u1ee5ng LLM. B\u1ea3ng d\u01b0\u1edbi so theo n\u0103m ti\u00eau ch\u00ed: tri\u1ebft l\u00fd thi\u1ebft k\u1ebf, tr\u01b0\u1eddng h\u1ee3p d\u00f9ng, h\u1ec7 sinh th\u00e1i, ng\u00f4n ng\u1eef h\u1ed7 tr\u1ee3 v\u00e0 \u0111\u1ed1i t\u01b0\u1ee3ng; ng\u00f4n ng\u1eef \u0111\u1ed1i chi\u1ebfu trang t\u00e0i li\u1ec7u ch\u00ednh th\u1ee9c c\u1ee7a t\u1eebng d\u1ef1 \u00e1n ng\u00e0y 29\/10\/2026.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">B\u1ed1n framework trong b\u1ea3ng: LangChain, <a href=\"https:\/\/www.llamaindex.ai\/\" target=\"_blank\" rel=\"noopener nofollow\">LlamaIndex<\/a>, <a href=\"https:\/\/learn.microsoft.com\/en-us\/semantic-kernel\/overview\/\" target=\"_blank\" rel=\"noopener nofollow\">Semantic Kernel<\/a> (Microsoft) v\u00e0 <a href=\"https:\/\/haystack.deepset.ai\/\" target=\"_blank\" rel=\"noopener nofollow\">Haystack<\/a> (deepset). Danh s\u00e1ch g\u1ed1c: LlamaIndex, Semantic Kernel (Microsoft) v\u00e0 Haystack (deepset).<\/p>\n\n\n\n<h3 id=\"Tri\u1ebft_l\u00fd_c\u1ed1t_l\u00f5i_v\u00e0_m\u1ee5c_ti\u00eau_ch\u00ednh\">Tri\u1ebft l\u00fd c\u1ed1t l\u00f5i v\u00e0 m\u1ee5c ti\u00eau ch\u00ednh<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>LangChain:<\/strong> \u0110\u01b0\u1ee3c \u0111\u1ecbnh v\u1ecb l\u00e0 m\u1ed9t framework &#8220;\u0111a n\u0103ng&#8221; (all-in-one). Tri\u1ebft l\u00fd c\u1ee7a LangChain xoay quanh <strong>t\u00ednh tr\u1eebu t\u01b0\u1ee3ng h\u00f3a (abstraction) v\u00e0 kh\u1ea3 n\u0103ng k\u1ebft h\u1ee3p (composability)<\/strong>. Framework n\u00e0y cung c\u1ea5p m\u1ed9t b\u1ed9 c\u00f4ng c\u1ee5 to\u00e0n di\u1ec7n \u0111\u1ec3 l\u1eadp tr\u00ecnh vi\u00ean &#8220;l\u1eafp gh\u00e9p&#8221; c\u00e1c th\u00e0nh ph\u1ea7n (LLM, c\u00f4ng c\u1ee5, ngu\u1ed3n d\u1eef li\u1ec7u) nh\u1eb1m x\u00e2y d\u1ef1ng b\u1ea5t k\u1ef3 \u1ee9ng d\u1ee5ng n\u00e0o, t\u1eeb RAG \u0111\u01a1n gi\u1ea3n \u0111\u1ebfn c\u00e1c T\u00e1c t\u1eed (Agent) t\u1ef1 ch\u1ee7 ph\u1ee9c t\u1ea1p.<\/li>\n\n\n<li><strong>LlamaIndex:<\/strong> L\u00e0 m\u1ed9t framework &#8220;chuy\u00ean gia v\u1ec1 d\u1eef li\u1ec7u&#8221;. Tri\u1ebft l\u00fd c\u1ee7a LlamaIndex ho\u00e0n to\u00e0n t\u1eadp trung v\u00e0o <strong>RAG (Retrieval-Augmented Generation)<\/strong>. Framework n\u00e0y kh\u00f4ng c\u1ed1 g\u1eafng l\u00e0m m\u1ecdi th\u1ee9, m\u00e0 thay v\u00e0o \u0111\u00f3, t\u1ed1i \u01b0u h\u00f3a s\u00e2u cho m\u1ed9t nhi\u1ec7m v\u1ee5 duy nh\u1ea5t: l\u00e0m th\u1eadt k\u1ef9 kh\u00e2u <em>n\u1ea1p (ingest), l\u1eadp ch\u1ec9 m\u1ee5c (index) v\u00e0 truy xu\u1ea5t (retrieve)<\/em> d\u1eef li\u1ec7u \u0111\u1ec3 cung c\u1ea5p ng\u1eef c\u1ea3nh cho LLM.<\/li>\n\n\n<li><strong>Semantic Kernel (Microsoft):<\/strong> L\u00e0 m\u1ed9t &#8220;SDK c\u1ea5p doanh nghi\u1ec7p&#8221;. Tri\u1ebft l\u00fd c\u1ee7a Semantic Kernel nh\u1ea5n m\u1ea1nh \u0111\u1ebfn <strong>s\u1ef1 \u1ed5n \u0111\u1ecbnh, b\u1ea3o m\u1eadt v\u00e0 kh\u1ea3 n\u0103ng t\u00edch h\u1ee3p doanh nghi\u1ec7p<\/strong>. Gi\u1ea3i ph\u00e1p n\u00e0y \u0111\u01b0\u1ee3c thi\u1ebft k\u1ebf nh\u01b0 m\u1ed9t &#8220;b\u1ed9 \u0111i\u1ec1u ph\u1ed1i&#8221; (orchestrator) g\u1ecdn nh\u1eb9, cho ph\u00e9p t\u00edch h\u1ee3p c\u00e1c &#8220;k\u1ef9 n\u0103ng&#8221; (skills) AI v\u00e0o c\u00e1c \u1ee9ng d\u1ee5ng .NET, Java ho\u1eb7c Python hi\u1ec7n h\u1eefu m\u1ed9t c\u00e1ch an to\u00e0n v\u00e0 c\u00f3 c\u1ea5u tr\u00fac.<\/li>\n\n\n<li><strong>Haystack (deepset):<\/strong> L\u00e0 m\u1ed9t &#8220;h\u1ec7 th\u1ed1ng t\u00ecm ki\u1ebfm cho production&#8221;. Tri\u1ebft l\u00fd c\u1ee7a Haystack xu\u1ea5t ph\u00e1t t\u1eeb <strong>MLOps v\u00e0 T\u00ecm ki\u1ebfm (Search)<\/strong>. Framework n\u00e0y t\u1eadp trung v\u00e0o vi\u1ec7c x\u00e2y d\u1ef1ng c\u00e1c &#8220;pipeline&#8221; (lu\u1ed3ng x\u1eed l\u00fd) t\u00ecm ki\u1ebfm ng\u1eef ngh\u0129a v\u00e0 RAG <em>s\u1eb5n s\u00e0ng cho m\u00f4i tr\u01b0\u1eddng production<\/em>, c\u00f3 kh\u1ea3 n\u0103ng m\u1edf r\u1ed9ng (scalable) v\u00e0 gi\u00e1m s\u00e1t (monitorable).<\/li>\n<\/ul>\n\n\n\n<h3 id=\"Tr\u01b0\u1eddng_h\u1ee3p_s\u1eed_d\u1ee5ng_ph\u00f9_h\u1ee3p\">Tr\u01b0\u1eddng h\u1ee3p s\u1eed d\u1ee5ng ph\u00f9 h\u1ee3p<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>LangChain:<\/strong> Ph\u00f9 h\u1ee3p khi x\u00e2y d\u1ef1ng <strong>T\u00e1c t\u1eed t\u1ef1 ch\u1ee7 (Autonomous Agents)<\/strong>. \u0110\u00e2y l\u00e0 c\u00e1c h\u1ec7 th\u1ed1ng ph\u1ee9c t\u1ea1p, n\u01a1i LLM \u0111\u01b0\u1ee3c trao quy\u1ec1n t\u1ef1 suy lu\u1eadn, l\u1eadp k\u1ebf ho\u1ea1ch v\u00e0 quy\u1ebft \u0111\u1ecbnh s\u1eed d\u1ee5ng c\u00f4ng c\u1ee5 n\u00e0o \u0111\u1ec3 ho\u00e0n th\u00e0nh m\u1ed9t m\u1ee5c ti\u00eau.<\/li>\n\n\n<li><strong>LlamaIndex:<\/strong> Ph\u00f9 h\u1ee3p v\u1edbi <strong>RAG n\u00e2ng cao<\/strong>. B\u1ea5t c\u1ee9 khi n\u00e0o \u1ee9ng d\u1ee5ng y\u00eau c\u1ea7u &#8220;tr\u00f2 chuy\u1ec7n v\u1edbi d\u1eef li\u1ec7u&#8221; (d\u00f9 l\u00e0 PDF, SQL hay API), LlamaIndex s\u1ebd cung c\u1ea5p c\u00e1c k\u1ef9 thu\u1eadt truy xu\u1ea5t v\u00e0 l\u1eadp ch\u1ec9 m\u1ee5c ti\u00ean ti\u1ebfn (v\u00ed d\u1ee5: graph RAG, query transformations) \u0111\u01b0\u1ee3c l\u00e0m chuy\u00ean s\u00e2u.<\/li>\n\n\n<li><strong>Semantic Kernel:<\/strong> Ph\u00f9 h\u1ee3p khi c\u1ea7n <strong>t\u00edch h\u1ee3p v\u00e0o \u1ee9ng d\u1ee5ng doanh nghi\u1ec7p<\/strong>. Khi c\u1ea7n b\u1ed5 sung ch\u1ee9c n\u0103ng AI (v\u00ed d\u1ee5: &#8220;t\u00f3m t\u1eaft email n\u00e0y&#8221;) v\u00e0o m\u1ed9t \u1ee9ng d\u1ee5ng .NET ho\u1eb7c Java quy m\u00f4 l\u1edbn, Semantic Kernel \u0111\u01b0\u1ee3c thi\u1ebft k\u1ebf cho m\u1ee5c \u0111\u00edch n\u00e0y.<\/li>\n\n\n<li><strong>Haystack:<\/strong> Ph\u00f9 h\u1ee3p v\u1edbi <strong>h\u1ec7 th\u1ed1ng t\u00ecm ki\u1ebfm ng\u1eef ngh\u0129a quy m\u00f4 l\u1edbn<\/strong>. Khi doanh nghi\u1ec7p c\u1ea7n x\u00e2y d\u1ef1ng m\u1ed9t &#8220;Google n\u1ed9i b\u1ed9&#8221; cho h\u00e0ng tri\u1ec7u t\u00e0i li\u1ec7u, \u0111\u00f2i h\u1ecfi s\u1ef1 \u1ed5n \u0111\u1ecbnh, t\u1ed1c \u0111\u1ed9 v\u00e0 kh\u1ea3 n\u0103ng v\u1eadn h\u00e0nh (MLOps).<\/li>\n<\/ul>\n\n\n\n<h3 id=\"H\u1ec7_sinh_th\u00e1i_v\u00e0_kh\u1ea3_n\u0103ng_t\u00edch_h\u1ee3p\">H\u1ec7 sinh th\u00e1i v\u00e0 kh\u1ea3 n\u0103ng t\u00edch h\u1ee3p<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>LangChain:<\/strong> <strong>R\u1ed9ng<\/strong>. C\u00f3 h\u00e0ng tr\u0103m t\u00edch h\u1ee3p cho m\u1ecdi th\u00e0nh ph\u1ea7n: t\u1eeb c\u00e1c LLM kh\u00e1c nhau, c\u01a1 s\u1edf d\u1eef li\u1ec7u vector, cho \u0111\u1ebfn c\u00e1c API v\u00e0 tr\u00ecnh t\u1ea3i d\u1eef li\u1ec7u.<\/li>\n\n\n<li><strong>LlamaIndex:<\/strong> <strong>S\u00e2u v\u1ec1 d\u1eef li\u1ec7u<\/strong>. H\u1ec7 sinh th\u00e1i t\u1eadp trung chuy\u00ean s\u00e2u v\u00e0o c\u00e1c tr\u00ecnh k\u1ebft n\u1ed1i d\u1eef li\u1ec7u (data connectors) v\u00e0 c\u01a1 s\u1edf d\u1eef li\u1ec7u vector. Framework n\u00e0y c\u00f3 c\u00e1c tr\u00ecnh ph\u00e2n t\u00edch (parser) chuy\u00ean d\u1ee5ng cho c\u00e1c lo\u1ea1i t\u1ec7p ph\u1ee9c t\u1ea1p (nh\u01b0 PDF c\u00f3 b\u1ea3ng bi\u1ec3u) kh\u00e1 t\u1ed1t.<\/li>\n\n\n<li><strong>Semantic Kernel:<\/strong> <strong>T\u1eadp trung<\/strong>. H\u1ec7 sinh th\u00e1i t\u1eadp trung m\u1ea1nh v\u00e0o c\u00e1c s\u1ea3n ph\u1ea9m c\u1ee7a Microsoft (Azure, Microsoft 365). S\u1ed1 l\u01b0\u1ee3ng t\u00edch h\u1ee3p kh\u00f4ng nhi\u1ec1u b\u1eb1ng LangChain, nh\u01b0ng c\u00e1c t\u00edch h\u1ee3p hi\u1ec7n c\u00f3 r\u1ea5t ch\u1eb7t ch\u1ebd v\u00e0 \u0111\u00e1ng tin c\u1eady.<\/li>\n\n\n<li><strong>Haystack:<\/strong> <strong>T\u1eadp trung v\u00e0o Production<\/strong>. H\u1ec7 sinh th\u00e1i t\u1eadp trung v\u00e0o c\u00e1c c\u00f4ng c\u1ee5 c\u1ea7n thi\u1ebft cho m\u00f4i tr\u01b0\u1eddng production nh\u01b0 Elasticsearch, OpenSearch v\u00e0 c\u00e1c c\u00f4ng c\u1ee5 gi\u00e1m s\u00e1t hi\u1ec7u su\u1ea5t AI.<\/li>\n<\/ul>\n\n\n\n<h3 id=\"Ng\u00f4n_ng\u1eef_l\u1eadp_tr\u00ecnh_h\u1ed7_tr\u1ee3\">Ng\u00f4n ng\u1eef l\u1eadp tr\u00ecnh h\u1ed7 tr\u1ee3<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>LangChain:<\/strong> <strong>Python<\/strong> v\u00e0 <strong>JavaScript<\/strong> (TypeScript). Hai b\u1ea3n \u0111\u01b0\u1ee3c ph\u00e1t tri\u1ec3n song song.<\/li>\n\n\n<li><strong>LlamaIndex:<\/strong> <strong>Python<\/strong> v\u00e0 <strong>JavaScript<\/strong> (TypeScript). B\u1ea3n Python l\u00e0 ch\u1ee7 \u0111\u1ea1o, nhi\u1ec1u t\u00ednh n\u0103ng h\u01a1n.<\/li>\n\n\n<li><strong>Semantic Kernel:<\/strong> <strong>C#<\/strong>, <strong>Python<\/strong>, v\u00e0 <strong>Java<\/strong>. H\u1ed7 tr\u1ee3 C# v\u00e0 Java l\u00e0 \u0111i\u1ec3m kh\u00e1c bi\u1ec7t ch\u00ednh, nh\u1eafm v\u00e0o doanh nghi\u1ec7p.<\/li>\n\n\n<li><strong>Haystack:<\/strong> <strong>Ch\u1ec9 h\u1ed7 tr\u1ee3 Python<\/strong>.<\/li>\n<\/ul>\n\n\n\n<h3 id=\"\u0110\u1ed1i_t\u01b0\u1ee3ng_ng\u01b0\u1eddi_d\u00f9ng_m\u1ee5c_ti\u00eau\">\u0110\u1ed1i t\u01b0\u1ee3ng ng\u01b0\u1eddi d\u00f9ng m\u1ee5c ti\u00eau<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>LangChain:<\/strong> L\u1eadp tr\u00ecnh vi\u00ean, nh\u00e0 nghi\u00ean c\u1ee9u, v\u00e0 c\u00e1c startup (nh\u1eefng ng\u01b0\u1eddi c\u1ea7n th\u1eed nghi\u1ec7m \u00fd t\u01b0\u1edfng nhanh v\u00e0 linh ho\u1ea1t t\u1ed1i \u0111a).<\/li>\n\n\n<li><strong>LlamaIndex:<\/strong> K\u1ef9 s\u01b0 AI, K\u1ef9 s\u01b0 d\u1eef li\u1ec7u (nh\u1eefng ng\u01b0\u1eddi t\u1eadp trung chuy\u00ean s\u00e2u v\u00e0o ch\u1ea5t l\u01b0\u1ee3ng v\u00e0 hi\u1ec7u su\u1ea5t c\u1ee7a h\u1ec7 th\u1ed1ng RAG).<\/li>\n\n\n<li><strong>Semantic Kernel:<\/strong> L\u1eadp tr\u00ecnh vi\u00ean doanh nghi\u1ec7p (Enterprise Developers), \u0111\u1eb7c bi\u1ec7t l\u00e0 c\u00e1c t\u1ed5 ch\u1ee9c s\u1eed d\u1ee5ng .NET ho\u1eb7c Java.<\/li>\n\n\n<li><strong>Haystack:<\/strong> K\u1ef9 s\u01b0 v\u1eadn h\u00e0nh AI\/ML (MLOps Engineers), K\u1ef9 s\u01b0 d\u1eef li\u1ec7u (nh\u1eefng ng\u01b0\u1eddi c\u1ea7n x\u00e2y d\u1ef1ng h\u1ec7 th\u1ed1ng production \u1ed5n \u0111\u1ecbnh, quy m\u00f4 l\u1edbn).<\/li>\n<\/ul>\n\n\n\n<h2 id=\"C\u00e2u_h\u1ecfi_th\u01b0\u1eddng_g\u1eb7p\">C\u00e2u h\u1ecfi th\u01b0\u1eddng g\u1eb7p<\/h2>\n\n\n\t\t<section\t\thelp class=\"sc_fs_faq sc_card    \"\n\t\t\t\t>\n\t\t\t\t<h2 id=\"LangChain_c\u00f3_ph\u1ea3i_l\u00e0_m\u1ed9t_LLM_kh\u00f4ng?\">LangChain c\u00f3 ph\u1ea3i l\u00e0 m\u1ed9t LLM kh\u00f4ng?<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t<div class=\"sc_fs_faq__content\">\n\t\t\t\t\n\n<p class=\"wp-block-paragraph\">Kh\u00f4ng. LangChain kh\u00f4ng ph\u1ea3i m\u00f4 h\u00ecnh ng\u00f4n ng\u1eef m\u00e0 l\u00e0 c\u00f4ng c\u1ee5 \u0111\u1ec3 \u0111i\u1ec1u ph\u1ed1i v\u00e0 x\u00e2y d\u1ef1ng \u1ee9ng d\u1ee5ng b\u1eb1ng c\u00e1c LLM nh\u01b0 GPT (OpenAI), Claude (Anthropic) hay Gemini (Google).<\/p>\n\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section\t\thelp class=\"sc_fs_faq sc_card    \"\n\t\t\t\t>\n\t\t\t\t<h2 id=\"LangChain_c\u00f3_mi\u1ec5n_ph\u00ed_kh\u00f4ng?\">LangChain c\u00f3 mi\u1ec5n ph\u00ed kh\u00f4ng?<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t<div class=\"sc_fs_faq__content\">\n\t\t\t\t\n\n<p class=\"wp-block-paragraph\">Th\u01b0 vi\u1ec7n LangChain l\u00e0 m\u00e3 ngu\u1ed3n m\u1edf, gi\u1ea5y ph\u00e9p MIT (PyPI, 29\/10\/2026), kh\u00f4ng thu ph\u00ed khi d\u00f9ng. Chi ph\u00ed \u0111\u1ebfn t\u1eeb API model (t\u00ednh theo token), c\u01a1 s\u1edf d\u1eef li\u1ec7u vector v\u00e0 m\u00e1y ch\u1ee7 ch\u1ea1y \u1ee9ng d\u1ee5ng; xem <a href=\"https:\/\/tino.vn\/blog\/phan-biet-chat-voi-token-credit-cua-ai\/\">c\u00e1ch t\u00ednh token v\u00e0 credit c\u1ee7a AI<\/a>.<\/p>\n\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section\t\thelp class=\"sc_fs_faq sc_card    \"\n\t\t\t\t>\n\t\t\t\t<h2 id=\"T\u1ea1i_sao_t\u00f4i_c\u1ea7n_LangChain?_Kh\u00f4ng_th\u1ec3_d\u00f9ng_tr\u1ef1c_ti\u1ebfp_API_c\u1ee7a_OpenAI_sao?\">T\u1ea1i sao t\u00f4i c\u1ea7n LangChain? Kh\u00f4ng th\u1ec3 d\u00f9ng tr\u1ef1c ti\u1ebfp API c\u1ee7a OpenAI sao?<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t<div class=\"sc_fs_faq__content\">\n\t\t\t\t\n\n<p class=\"wp-block-paragraph\">B\u1ea1n c\u00f3 th\u1ec3 d\u00f9ng tr\u1ef1c ti\u1ebfp API cho t\u00e1c v\u1ee5 \u0111\u01a1n gi\u1ea3n nh\u01b0 h\u1ecfi \u0111\u00e1p m\u1ed9t l\u1ea7n. LangChain c\u00f3 \u00edch khi LLM c\u1ea7n \u0111\u1ecdc t\u00e0i li\u1ec7u v\u00e0i tr\u0103m trang, g\u1ecdi c\u00f4ng c\u1ee5, nh\u1edb h\u1ed9i tho\u1ea1i ho\u1eb7c \u0111\u1ed5i qua l\u1ea1i gi\u1eefa nhi\u1ec1u h\u00e3ng model.<\/p>\n\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<section\t\thelp class=\"sc_fs_faq sc_card    \"\n\t\t\t\t>\n\t\t\t\t<h2 id=\"LangSmith_l\u00e0_g\u00ec?_C\u00f3_ph\u1ea3i_l\u00e0_LangChain_kh\u00f4ng?\">LangSmith l\u00e0 g\u00ec? C\u00f3 ph\u1ea3i l\u00e0 LangChain kh\u00f4ng?<\/h2>\t\t\t\t<div>\n\t\t\t\t\t\t<div class=\"sc_fs_faq__content\">\n\t\t\t\t\n\n<p class=\"wp-block-paragraph\">LangSmith l\u00e0 n\u1ec1n t\u1ea3ng th\u01b0\u01a1ng m\u1ea1i c\u1ee7a LangChain, Inc. \u0111\u1ec3 trace, g\u1ee1 l\u1ed7i v\u00e0 \u0111\u00e1nh gi\u00e1 \u1ee9ng d\u1ee5ng LLM khi ch\u1ea1y th\u1eadt. N\u00f3 kh\u00f4ng ph\u1ea3i framework; \u1ee9ng d\u1ee5ng LangChain ch\u1ea1y \u0111\u01b0\u1ee3c m\u00e0 kh\u00f4ng c\u1ea7n LangSmith.<\/p>\n\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<\/section>\n\t\t\n<script type=\"application\/ld+json\">\n\t{\n\t\t\"@context\": \"https:\/\/schema.org\",\n\t\t\"@type\": \"FAQPage\",\n\t\t\"mainEntity\": [\n\t\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"LangChain c\u00f3 ph\u1ea3i l\u00e0 m\u1ed9t LLM kh\u00f4ng?\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"<p>Kh\u00f4ng. LangChain kh\u00f4ng ph\u1ea3i m\u00f4 h\u00ecnh ng\u00f4n ng\u1eef m\u00e0 l\u00e0 c\u00f4ng c\u1ee5 \u0111\u1ec3 \u0111i\u1ec1u ph\u1ed1i v\u00e0 x\u00e2y d\u1ef1ng \u1ee9ng d\u1ee5ng b\u1eb1ng c\u00e1c LLM nh\u01b0 GPT (OpenAI), Claude (Anthropic) hay Gemini (Google).<\/p>\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t,\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"LangChain c\u00f3 mi\u1ec5n ph\u00ed kh\u00f4ng?\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"<p>Th\u01b0 vi\u1ec7n LangChain l\u00e0 m\u00e3 ngu\u1ed3n m\u1edf, gi\u1ea5y ph\u00e9p MIT (PyPI, 29\/10\/2026), kh\u00f4ng thu ph\u00ed khi d\u00f9ng. Chi ph\u00ed \u0111\u1ebfn t\u1eeb API model (t\u00ednh theo token), c\u01a1 s\u1edf d\u1eef li\u1ec7u vector v\u00e0 m\u00e1y ch\u1ee7 ch\u1ea1y \u1ee9ng d\u1ee5ng; xem <a>c\u00e1ch t\u00ednh token v\u00e0 credit c\u1ee7a AI<\/a>.<\/p>\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t,\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"T\u1ea1i sao t\u00f4i c\u1ea7n LangChain? Kh\u00f4ng th\u1ec3 d\u00f9ng tr\u1ef1c ti\u1ebfp API c\u1ee7a OpenAI sao?\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"<p>B\u1ea1n c\u00f3 th\u1ec3 d\u00f9ng tr\u1ef1c ti\u1ebfp API cho t\u00e1c v\u1ee5 \u0111\u01a1n gi\u1ea3n nh\u01b0 h\u1ecfi \u0111\u00e1p m\u1ed9t l\u1ea7n. LangChain c\u00f3 \u00edch khi LLM c\u1ea7n \u0111\u1ecdc t\u00e0i li\u1ec7u v\u00e0i tr\u0103m trang, g\u1ecdi c\u00f4ng c\u1ee5, nh\u1edb h\u1ed9i tho\u1ea1i ho\u1eb7c \u0111\u1ed5i qua l\u1ea1i gi\u1eefa nhi\u1ec1u h\u00e3ng model.<\/p>\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t,\t\t\t\t{\n\t\t\t\t\"@type\": \"Question\",\n\t\t\t\t\"name\": \"LangSmith l\u00e0 g\u00ec? C\u00f3 ph\u1ea3i l\u00e0 LangChain kh\u00f4ng?\",\n\t\t\t\t\"acceptedAnswer\": {\n\t\t\t\t\t\"@type\": \"Answer\",\n\t\t\t\t\t\"text\": \"<p>LangSmith l\u00e0 n\u1ec1n t\u1ea3ng th\u01b0\u01a1ng m\u1ea1i c\u1ee7a LangChain, Inc. \u0111\u1ec3 trace, g\u1ee1 l\u1ed7i v\u00e0 \u0111\u00e1nh gi\u00e1 \u1ee9ng d\u1ee5ng LLM khi ch\u1ea1y th\u1eadt. N\u00f3 kh\u00f4ng ph\u1ea3i framework; \u1ee9ng d\u1ee5ng LangChain ch\u1ea1y \u0111\u01b0\u1ee3c m\u00e0 kh\u00f4ng c\u1ea7n LangSmith.<\/p>\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t}\n\t\t\t\t\t\t]\n\t}\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>LangChain l\u00e0 framework m\u00e3 ngu\u1ed3n m\u1edf (gi\u1ea5y ph\u00e9p MIT) gi\u00fap l\u1eadp tr\u00ecnh vi\u00ean x\u00e2y d\u1ef1ng \u1ee9ng d\u1ee5ng v\u00e0 AI agent d\u1ef1a tr\u00ean m\u00f4 h\u00ecnh ng\u00f4n ng\u1eef l\u1edbn (LLM), b\u1eb1ng Python ho\u1eb7c JavaScript\/TypeScript: n\u1ed1i model v\u1edbi c\u00f4ng c\u1ee5, d\u1eef li\u1ec7u ri\u00eang v\u00e0 b\u1ed9 nh\u1edb h\u1ed9i tho\u1ea1i qua m\u1ed9t giao di\u1ec7n chung. B\u1ea3n hi\u1ec7n h\u00e0nh l\u00e0 langchain [&hellip;]<\/p>\n","protected":false},"author":23,"featured_media":120711,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7674],"tags":[7451],"class_list":["post-120703","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-model-ai","tag-langchain"],"_links":{"self":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/posts\/120703","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/users\/23"}],"replies":[{"embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/comments?post=120703"}],"version-history":[{"count":4,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/posts\/120703\/revisions"}],"predecessor-version":[{"id":133051,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/posts\/120703\/revisions\/133051"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/media\/120711"}],"wp:attachment":[{"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/media?parent=120703"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/categories?post=120703"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/tino.vn\/blog\/wp-json\/wp\/v2\/tags?post=120703"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}