0
0
Lập trình
Harry Tran
Harry Tran106580903228332612117

Cách Chúng Tôi Sử Dụng OpenAI và Gemini Batch APIs Để Phân Loại Khách Hàng

Đăng vào 1 tháng trước

• 10 phút đọc

Giới thiệu

Trong bài viết này, chúng tôi sẽ chia sẻ cách mà nhóm Dữ liệu đã sử dụng AI để giải quyết một vấn đề cụ thể cho đội ngũ Marketing và Bán hàng - Phân loại 3000 website (Tài khoản Salesforce) để xác định xem chúng có phải là thương mại điện tử và có khả năng nhận thanh toán hay không. Việc này không chỉ giúp tiết kiệm thời gian mà còn nâng cao chất lượng khách hàng tiềm năng cho đội ngũ Bán hàng.

Nội dung chính

  • Vấn đề hiện tại và những gì chúng tôi đang cố gắng giải quyết
  • Thiết kế quy trình
  • Tại sao sử dụng LLM từ 2 nhà cung cấp AI
  • Kỹ thuật tạo câu lệnh và sử dụng mẫu câu lệnh
  • Mở rộng quy mô với OpenAI Batch API và Google Batch Predictions

Tóm tắt

Chúng tôi đã triển khai một quy trình làm giàu dữ liệu hàng loạt sử dụng OpenAI và các mô hình LLM của Gemini thông qua OpenAI Batch API và Google Batch Predictions, nhằm tiết kiệm chi phí trong việc làm giàu dữ liệu bằng sức mạnh của LLMs. Để đảm bảo độ chính xác tối đa và giảm thiểu tác động của hiện tượng ảo giác từ các LLM, chúng tôi áp dụng một hệ thống đồng thuận đơn giản: Mỗi trang web được kiểm tra bởi cả hai AI 3 lần, và chỉ những kết quả mà chúng đồng ý mới được chấp nhận. Mặc dù điều này làm tăng chi phí, nhưng chúng tôi đã tối ưu hóa cho thời gian có giá trị để đưa những khách hàng tiềm năng tốt vào tay đội ngũ Bán hàng.

Chúng tôi đã đào tạo đội ngũ Marketing viết câu lệnh hiệu quả cho các LLM trước khi mở rộng quy mô sử dụng chế độ hàng loạt. Đây là một ví dụ điển hình về việc công nghệ và kinh doanh hợp tác để đạt được kết quả chung và mở rộng việc sử dụng AI trong doanh nghiệp.


Vấn đề hiện tại

Nhóm Marketing định kỳ xây dựng danh sách các thương gia tiềm năng có thể tích hợp phương thức thanh toán siêu vào trang thanh toán của họ. Những khách hàng tiềm năng này sau đó sẽ được cung cấp cho các Nhân viên Tài khoản (AEs) để thực hiện đăng ký.

Khi nhận được một trang web, điều đầu tiên mà các AEs làm là kiểm tra thủ công liệu trang web có phải là thương mại điện tử hay không:

  • Có thể mua sản phẩm trên trang web không?
  • Có phần thanh toán trên trang web không?
  • Có chấp nhận thanh toán bằng thẻ không?

⚠️ Nhiều trang web không phải là thương mại điện tử ⚠️ dẫn đến:

  • Các AEs lãng phí thời gian kiểm tra thủ công
  • Nhiều khách hàng tiềm năng bị loại bỏ ngay từ đầu
  • Các AEs cảm thấy thất vọng với những khách hàng được giao
  • Các AEs phải tự tìm kiếm khách hàng, đánh mất trách nhiệm chính của họ trong việc ký kết hợp đồng

Những gì chúng tôi đang cố gắng giải quyết

Những câu hỏi mà chúng tôi đã tự hỏi:

  • Liệu chúng tôi có thể tăng số lượng khách hàng tiềm năng ở đầu kênh bán hàng không?
  • Liệu chúng tôi có thể tự động hóa kiểm tra xem đó có phải là thương mại điện tử hay không, thay vì phải phân loại từng trang web một cách thủ công?
  • Liệu chúng tôi có thể mở rộng kiểm tra này trên N hàng trăm/ngàn trang web không?

Thiết kế quy trình

Trước khi đi vào chi tiết về Kỹ thuật tạo câu lệnh và cách mà quy trình hàng loạt hoạt động, dưới đây minh họa quy trình và hai phần của nó.


Tại sao sử dụng LLM từ 2 nhà cung cấp AI

Dù chi phí cao hơn, chúng tôi cần phải tự tin vào độ chính xác của những gì chúng tôi thông báo cho các AEs trong đội ngũ Bán hàng. Thay vì chỉ dựa vào một AI duy nhất, chúng tôi đã sử dụng LLM từ hai nhà cung cấp AI khác nhau, và quyết định cuối cùng được dựa trên sự đồng thuận của chúng.

Hãy nghĩ về điều này như việc nhận một ý kiến thứ hai từ một chuyên gia đáng tin cậy. Nếu hai chuyên gia độc lập kiểm tra cùng một dữ liệu và đi đến cùng một kết luận, mức độ tự tin của bạn vào kết quả đó sẽ tăng lên đáng kể.

Một số lợi ích bao gồm:

  • Độ chính xác thông qua đồng thuận: Cốt lõi của chiến lược của chúng tôi được xây dựng dựa trên sự đồng thuận. Một xác nhận thương mại điện tử chỉ được xác nhận nếu cả hai LLM đồng ý độc lập. Quy tắc đơn giản nhưng mạnh mẽ này hoạt động như một bộ lọc, giảm thiểu rủi ro từ một LLM duy nhất có thể mắc lỗi, ảo giác hoặc hiểu sai một trang web.
  • Giảm thiểu điểm yếu cụ thể của mô hình: Mỗi LLM có kiến trúc, dữ liệu huấn luyện và thành kiến riêng. Một LLM có thể xuất sắc trong việc xác định các trang web bán lẻ truyền thống nhưng lại gặp khó khăn với các dịch vụ đăng ký, trong khi LLM khác có thể có điểm mạnh ngược lại. Sử dụng một LLM duy nhất có nghĩa là bạn cũng sẽ thừa hưởng tất cả các điểm mù của nó. Bằng cách sử dụng hai LLM, chúng tôi đa dạng hóa "danh mục nhận thức" của mình, cho phép điểm mạnh của một LLM bù đắp cho điểm yếu của LLM kia, dẫn đến kết quả chính xác hơn và đồng đều hơn.
  • Kiểm soát chất lượng tự động: Có thể lợi ích quý giá nhất là điều gì xảy ra khi các LLM không đồng ý. Một sự không đồng thuận là một tín hiệu quan trọng. Nó cho chúng tôi biết rằng một trang web có thể gây nhầm lẫn, là một trường hợp biên hoặc phức tạp theo cách có thể dễ dàng đánh lừa một AI đơn lẻ. Hệ thống của chúng tôi tự động đánh dấu những sự không đồng thuận này để xem xét thủ công.

Kỹ thuật tạo câu lệnh

Kỹ thuật tạo câu lệnh là quá trình viết các hướng dẫn hiệu quả cho một LLM, sao cho nó nhất quán tạo ra nội dung đáp ứng yêu cầu của bạn.

Chúng tôi đã sử dụng nền tảng phát triển OpenAI để phát triển một mẫu câu lệnh tái sử dụng có thể được sử dụng trong API phản hồi. Nền tảng này cho phép kiểm tra các phiên bản khác nhau của một câu lệnh cạnh tranh để đánh giá sự thay đổi.

Lợi ích của việc sử dụng mẫu câu lệnh

Bạn có thể sử dụng các biến thông qua {{placeholder}} và mã tích hợp của bạn vẫn giữ nguyên, ví dụ:

python Copy
response = client.responses.create(
    model="gpt-4.1",
    prompt={
        "id": "pmpt_abc123",
        "version": "2",
        "variables": {
            "website_url": "xyz.com"
        }
    }
)

Bạn cũng có thể cấu hình câu lệnh để sử dụng công cụ tìm kiếm web cho phép LLM tìm kiếm thông tin mới nhất trước khi tạo ra phản hồi:

json Copy
{
    "type": "web_search_preview",
    "user_location": {
        "type": "approximate",
        "country": "GB",
        "search_context_size": "high"
    }
}

Mẫu câu lệnh

Nhóm Marketing đã tạo ra một mẫu câu lệnh có hướng dẫn rõ ràng cho LLM để kiểm tra xem một URL trang web đơn lẻ có phải là thương mại điện tử hay không.

json Copy
Please research the website {{url}} provided by the user. You must only return the data requested in the "InformationRequested" section and in a format according to the "OutputFormat" section. Do not include any explanations, reasoning, or commentary.

## InformationRequested
- url: {{url}}
- is_url_valid: Y/N — Is the URL valid and accessible?
- is_ecommerce: Y/N - You MUST use rules from section "Evaluation Rules for column is_ecommerce"

## OutputFormat
Output as JSON with the following fields. Do not include markdown around the JSON:
- url
- is_url_valid
- is_ecommerce

## Evaluation Rules for column is_ecommerce

*Mark "Y" only if all of the following are true, based on explicit evidence available*:
* rule 1
* rule 2
* etc

*Mark "N" in any of the following cases*:
* rule 1
* rule 2
* etc

## Final Reminder

- You must only return the data requested in the "InformationRequested" section.
- You must only return it in the format according to the "OutputFormat" section.
- You must not include any explanations, reasoning, or commentary.

Mở rộng quy mô - OpenAI Batch API

OpenAI có một Batch API cho phép bạn gửi các nhóm yêu cầu không đồng bộ với chi phí thấp hơn 50%, một nhóm hạn chế tốc độ cao hơn đáng kể và thời gian hoàn thành rõ ràng trong 24 giờ. Quy trình làm việc là:

Tệp hàng loạt được tải lên chứa các yêu cầu sẽ có một dòng cho mỗi trang web như dưới đây,

json Copy
{"custom_id": "request-[1756480801.159196]-xyz.com", "method": "POST", "url": "/v1/responses", "body": {"model": "gpt-4.1", "input": "Run the following prompt", "prompt": {"id": "pmpt_XXX", "version": "2", "variables": {"url": "xyz.com"}}}}
{"custom_id": "request-[1756480802.1434196]-abc.com", "method": "POST", "url": "/v1/responses", "body": {"model": "gpt-4.1", "input": "Run the following prompt", "prompt": {"id": "pmpt_XXX", "version": "2", "variables": {"url": "abc.com"}}}}

Những lợi ích của điều này bao gồm:

  • Giảm chi phí đáng kể: Giảm 50% trên giá là một lợi thế lớn cho việc xử lý hàng ngàn URL, dẫn đến tiết kiệm chi phí đáng kể so với việc sử dụng API theo thời gian thực.
  • Tăng thông lượng: Hạn chế tốc độ cao hơn cho phép xử lý một khối lượng lớn yêu cầu song song, giảm đáng kể thời gian tổng thể cần thiết để làm giàu một tập dữ liệu lớn.
  • Quy trình làm việc "Bắn và Quên" không đồng bộ: Bạn có thể nộp một công việc hàng loạt lớn mà không cần phải chờ nó hoàn thành. Điều này hoàn hảo cho các tác vụ xử lý không nhạy cảm về thời gian, vì bạn có thể lấy kết quả sau mà không cần giữ kết nối mở.
  • Logic phía khách hàng đơn giản hóa: Nó loại bỏ nhu cầu bạn phải xây dựng và duy trì logic phức tạp để xử lý giới hạn tốc độ, các yêu cầu đồng thời và thử lại. Bạn chỉ cần chuẩn bị và tải lên một tệp.
  • Tăng cường khả năng phục hồi và xử lý lỗi: Vì các yêu cầu độc lập, sự thành công hoặc thất bại của một yêu cầu không ảnh hưởng đến các yêu cầu khác. Tệp đầu ra rõ ràng chỉ ra trạng thái của mỗi yêu cầu, giúp dễ dàng xác định và thử lại chỉ những yêu cầu thất bại.
  • Ngữ cảnh cập nhật: Mẫu câu lệnh được cấu hình để sử dụng công cụ tìm kiếm web để cung cấp thông tin thời gian thực về trang web. Tìm kiếm này được thực hiện độc lập cho mỗi trang web.

Mở rộng quy mô - Google Batch Predictions

Google Batch Predictions cũng cho phép bạn tạo ra các dự đoán từ các mô hình Gemini bằng cách sử dụng một Công việc Hàng loạt, quy trình làm việc là:

Tương tự như OpenAI, tệp công việc hàng loạt chứa một yêu cầu trên mỗi dòng, nhưng bạn không thể sử dụng mẫu câu lệnh, vì vậy mỗi yêu cầu trong tệp có đầy đủ câu lệnh. Ngoài ra, công cụ tìm kiếm web trong Gemini không có sẵn thông qua Batch Predictions, nhưng chúng tôi vẫn thấy kết quả chính xác.


Kết quả cuối cùng

Chúng tôi hiện có một cách lặp lại để làm giàu dữ liệu bằng sức mạnh của LLMs cho một số lượng lớn các trang web. Chúng tôi đã bắt đầu sử dụng nó để thực hiện các kiểm tra khác.

Các Tài khoản Salesforce mà chúng tôi đã làm giàu với is commerce = Y/N đã được sử dụng để tạo ra một danh sách được phân loại tốt hơn ở đầu kênh bán hàng.

Các AEs không còn báo cáo rằng trang web là không phải thương mại điện tử nữa.

Một công việc tốt của AI và con người!

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào