LangChain: Blog
85

Tin ngành

LangChain ra mắt AI Agent chuyên dụng tối ưu hóa quảng cáo trả phí

(giờ Việt Nam)

Tóm tắt AI

LangChain giới thiệu giải pháp AI Agent giúp phân tích hiệu suất quảng cáo, đưa ra đề xuất tối ưu và chuyển đổi dữ liệu marketing thành hành động thực tế.

Bản dịch AI

How We Built LangChain’s Paid Media Agent

Trong ba năm đầu tiên của LangChain, kênh bán hàng của chúng tôi phát triển chủ yếu một cách tự nhiên, nhờ vào mã nguồn mở, nội dung, YouTube, cộng đồng và các buổi gặp mặt. Vào tháng 1, chúng tôi muốn khởi động chương trình quảng cáo trả phí để bắt đầu kết nối với các khách hàng tiềm năng mà chúng tôi chưa tiếp cận được theo cách tự nhiên, chẳng hạn như những người ở các khu vực mới và các nhà ra quyết định tại doanh nghiệp.

Chúng tôi muốn mở rộng từ một bộ máy tăng trưởng tự nhiên sang năm kênh trả phí chỉ trong sáu tháng. Điều này tạo ra những thách thức mới cho đội ngũ marketing nhỏ bé của chúng tôi. Chúng tôi phải theo dõi các chiến dịch mới đang triển khai trên nhiều kênh, các thử nghiệm khác nhau về nội dung sáng tạo và mục tiêu, cũng như khối lượng dữ liệu hiệu suất ngày càng tăng để hiểu và đưa ra hành động kịp thời.

Để mở rộng và tối ưu hóa, chúng tôi đã phải vượt qua một số rào cản kỹ thuật. Mỗi nền tảng quảng cáo đều có cấu trúc dữ liệu riêng, gây khó khăn cho việc đối soát hiệu suất giữa các kênh. Các thông số chiến dịch cũng không khớp hoàn toàn với những kết quả mà chúng tôi thực sự quan tâm, như yêu cầu bán hàng, lượt đăng ký hoặc lượt tải xuống nội dung. Khi tốc độ phát hành sản phẩm của công ty tăng lên và số lượng chiến dịch ngày càng nhiều, việc theo dõi những gì đang chạy, những gì hiệu quả và những gì cần thử nghiệm tiếp theo trở nên ngày càng khó quản lý theo cách thủ công.

Chúng tôi bắt tay vào xây dựng một agent có thể giúp quản lý sự phức tạp đó. Nó sẽ theo dõi các thông báo sản phẩm mới, soạn thảo chiến dịch, thêm từ khóa, thử nghiệm các biến thể và đề xuất các thử nghiệm cho đội ngũ phê duyệt. Theo thời gian, nó sẽ vận hành như một vòng lặp học tập liên tục: phân tích hiệu suất, thực hiện thay đổi, quan sát kết quả, ghi lại những gì đã học được và áp dụng những thông tin đó cho các chiến dịch trong tương lai. Mục tiêu của chúng tôi là làm cho đội ngũ marketing làm việc hiệu quả hơn trong khi liên tục cải thiện hiệu suất chiến dịch.

Trong bài viết này, bạn sẽ tìm hiểu cách thức hoạt động của paid media agent, cách nó hỗ trợ đội ngũ marketing và những gì chúng tôi đã học được về kỹ thuật agent trong quá trình xây dựng nó.

Các kết quả chính

Những gì chúng tôi đã xây dựng

Paid Media Agent là một agent hoạt động lâu dài nằm trong Slack. Mỗi thứ Hai, nó kết hợp dữ liệu từ nền tảng quảng cáo với dữ liệu khách hàng tiềm năng và pipeline từ kho dữ liệu của chúng tôi. Nó đăng một bản tóm tắt và một tệp PDF có thương hiệu cho từng nền tảng, giải thích những gì đã thay đổi, lý do tại sao và đội ngũ nên làm gì tiếp theo.

Đội ngũ có thể gắn thẻ (tag) nó trong một luồng tin nhắn để đặt câu hỏi tiếp theo về các chiến dịch, chi phí hoặc pipeline. Nó cũng có thể đề xuất các từ khóa mới, thay đổi mục tiêu, nội dung quảng cáo hoặc các chiến dịch tìm kiếm mới dựa trên cẩm nang và các đánh giá đã được mã hóa của chúng tôi.

Cách chúng tôi xây dựng nó

Chúng tôi xây dựng agent này dựa trên một nguyên tắc đơn giản: một coding agent chính là một nhân viên tri thức (knowledge worker).

Công việc tri thức thường bao gồm việc đọc tệp, chuyển đổi thông tin, chạy phân tích và ghi chép lại mọi thứ. Một coding agent cũng thực hiện các tác vụ này với các tệp tin và một shell.

Chúng tôi coi agent này như một chuyên viên phân tích truyền thông trả phí mới. Chúng tôi cung cấp cho nó một máy tính, phần mềm cần thiết để làm việc, quyền truy cập vào dữ liệu của chúng tôi và tài liệu về cách thức hoạt động của doanh nghiệp.

Hệ điều hành

Chúng tôi sử dụng LangChain Deep Agents làm khung (harness) cho agent để không phải xây dựng cơ sở hạ tầng cốt lõi từ đầu. Giống như một hệ điều hành, Deep Agents quản lý quyền truy cập vào tệp, thực thi mã và bộ nhớ làm việc. Nó cung cấp cho mô hình các công cụ để lập kế hoạch công việc, ủy quyền tác vụ cho các subagent và quản lý ngữ cảnh khi các tác vụ trở nên phức tạp hơn. Đây chính là nền tảng của khung agent. Chúng tôi xếp chồng các công cụ, kỹ năng và kiến thức kinh doanh về truyền thông trả phí của mình lên trên nền tảng đó.

Máy tính

Mỗi lần chạy đều có sẵn một LangSmith Sandbox theo mặc định. Đó là một microVM biệt lập với ổ đĩa 32 GB và một shell để chạy các lệnh. Sandbox cung cấp cho agent một môi trường an toàn, biệt lập để thực thi mã và làm việc với các tệp mà không ảnh hưởng đến các lần chạy khác hoặc hệ thống cơ sở.

Chúng tôi trang bị cho nó pandas và DuckDB để phân tích, openpyxl cho bảng tính, cùng với WeasyPrint và Jinja2 để tạo báo cáo. Bên cạnh phần mềm đó là dữ liệu làm việc và kiến thức kinh doanh, được lưu trữ dưới dạng Markdown qua sáu kỹ năng và một wiki dài mười chín trang.

Để giữ cho thời gian khởi động nhanh chóng, chúng tôi đóng gói phần mềm và wiki kinh doanh vào một snapshot, một hình ảnh đã lưu mà sandbox khởi động từ đó. Điều này giúp giảm thời gian khởi động trung bình xuống 10 giây.

Cung cấp ngữ cảnh phù hợp

Khi agent đã có máy tính, thách thức tiếp theo là cung cấp cho nó ngữ cảnh phù hợp. Một chuyên viên phân tích là con người cần hiểu vai trò của họ, các phương pháp họ sử dụng, công ty họ làm việc, những gì đang diễn ra ngay lúc này và các quy tắc họ cần tuân theo.

Cách tiếp cận ngây thơ là đưa tất cả những điều đó vào system prompt. Tuy nhiên, điều đó sẽ dẫn đến một prompt quá dài, tốn kém khi đưa vào mỗi lần chạy và có khả năng trở nên lỗi thời.

Một cách tốt hơn để suy nghĩ về vấn đề này là cửa sổ ngữ cảnh (context window) thường là nút thắt cổ chai, chứ không phải mô hình. Nhiều lỗi suy luận rõ ràng thực chất là lỗi về ngữ cảnh. Hoặc là mô hình thiếu thông tin chính xác, hoặc là quá nhiều thông tin không liên quan đang tranh giành sự chú ý của nó.

Thay vì coi prompt là nơi chứa kiến thức, chúng tôi coi nó như một bản đồ. Kiến thức nằm trong các tệp có cấu trúc với vị trí có thể dự đoán được, và agent chỉ tải ngữ cảnh cần thiết cho tác vụ đang thực hiện.

Chúng tôi chia ngữ cảnh thành năm lớp và mô tả từng lớp dưới đây (sắp xếp theo tốc độ thay đổi):

Wiki là tất cả những gì cụ thể về LangChain: chiến dịch nào dành cho nhận diện thương hiệu, chiến dịch nào nên thúc đẩy yêu cầu demo, những gì chúng tôi đã quyết định vào tháng 7 và lý do tại sao.

Điều này tuân theo mô hình từ ghi chú wiki LLM của Karpathy và Wiki Memory của chính chúng tôi.

Hợp nhất kiến trúc agent

Ban đầu chúng tôi đã xây dựng hai đồ thị agent vì trải nghiệm người dùng trông khác nhau:

Sự phân tách đó chỉ kéo dài năm tuần. Mọi khả năng mới đều phải được triển khai hai lần. Các tính năng đến Slack và báo cáo vào các thời điểm khác nhau. Slack không thể xử lý tệp đính kèm vì nó không có sandbox, và nó không thể trả lời các câu hỏi tiếp theo về báo cáo thứ Hai vì các tệp PDF đó đến từ một đồ thị khác.

Sai lầm là coi chúng như hai sản phẩm riêng biệt. Chúng là hai điểm truy cập vào cùng một phân tích, được hỗ trợ bởi cùng một wiki, kỹ năng, công cụ và các quy tắc nguồn. Thay vào đó, chúng tôi tách biệt trạng thái và khả năng cho từng yêu cầu. Mỗi luồng tin nhắn có sandbox và checkpoint riêng, và mỗi lần chạy chỉ thấy các công cụ mà nó cần.

Bây giờ chỉ còn một đồ thị, được khởi tạo mới cho mỗi yêu cầu:

Đó là cùng một runtime với các cấu hình khả năng khác nhau, được lưu trữ trên LangSmith Deployment, nơi xử lý việc lưu trữ, mở rộng và các lần chạy theo lịch trình. Và vì Slack hiện chia sẻ cùng một kiến trúc sandbox, agent cũng có thể mở tệp PDF báo cáo và trả lời các câu hỏi tiếp theo ngay trong luồng tin nhắn đã tạo ra nó.

Các bài học kỹ thuật chính

LangChainAI AgentMarketingQuảng cáoTự động hóa
Đọc bài gốc

Bài viết được AI dịch và tổng hợp tự động từ LangChain: Blog. Liên kết bài gốc ở phía trên. AIHOT.vn luôn dẫn nguồn đầy đủ — nếu bạn thấy điểm cần chỉnh sửa, hãy gửi ý kiến tại trang phản hồi.