Chuyển đến nội dung chính
Hướng dẫn AI

Tạo nội dung thương mại điện tử đa ngôn ngữ từ hình ảnh sản phẩm với AI Writer

Tìm hiểu cách cài đặt, cấu hình và sử dụng AI Writer, một ứng dụng Express tạo nội dung thương mại điện tử từ hình ảnh sản phẩm. Hướng dẫn này trình bày cách thiết lập tự động và thủ công, tạo nội dung đa ngôn ngữ, lấy hình ảnh từ trang, dịch thuật, tín dụng, xử lý video thử nghiệm, kiểm thử và các lưu ý bảo mật khi triển khai thực tế.

Tạo nội dung thương mại điện tử đa ngôn ngữ từ hình ảnh sản phẩm với AI Writer

AI Writer là gì?

AI Writer là ứng dụng nguồn mở biến ảnh sản phẩm thành mô tả thương mại điện tử có thể chỉnh sửa. Bạn có thể cung cấp từ một đến tám URL hình ảnh HTTPS công khai, chọn ngôn ngữ đầu ra và sử dụng mô hình Chat Completions có khả năng xử lý hình ảnh của OpenAI để tạo bản nháp.

Ứng dụng hỗ trợ tiếng Anh, tiếng Thổ Nhĩ Kỳ, tiếng Tây Ban Nha, tiếng Đức, tiếng Pháp và tiếng Trung. Ứng dụng cũng bao gồm xác thực tài khoản, chỉnh sửa trên trình duyệt, dịch thuật và hệ thống tín dụng được hỗ trợ bởi MySQL.

Không gian làm việc AI Writer

AI Writer tạo bản nháp thay vì thông số sản phẩm đã được xác minh. Hãy xem xét mọi mô tả trước khi xuất bản, vì hình ảnh không thể chứng minh một cách đáng tin cậy các chi tiết như kích thước, thành phần vải hoặc chứng nhận.

Tính năng chính

  • Viết dựa trên hình ảnh: Tạo nội dung từ một đến tám hình ảnh sản phẩm HTTPS có thể truy cập công khai.
  • Lấy dữ liệu từ trang sản phẩm: Sử dụng Puppeteer để thu thập liên kết hình ảnh từ một trang sản phẩm công khai.
  • Sáu ngôn ngữ đầu ra: Tạo nội dung bằng tiếng Anh, tiếng Thổ Nhĩ Kỳ, tiếng Tây Ban Nha, tiếng Đức, tiếng Pháp hoặc tiếng Trung.
  • Chỉnh sửa và dịch thuật: Tinh chỉnh bản nháp được tạo ngay trên trình duyệt, sao chép và dịch chúng bằng một thao tác.
  • Tài khoản và tín dụng: Ứng dụng sử dụng mật khẩu bcrypt, phiên MySQL và số dư giúp ngăn chi tiêu vượt mức khi có các yêu cầu song song.
  • Hoàn tín dụng khi thất bại: Tín dụng đã đặt trước được hoàn lại khi các yêu cầu tạo được hỗ trợ bị thất bại.
  • Nhập video thử nghiệm: Trích xuất tối đa tám khung hình từ một video YouTube ngắn và sử dụng chúng làm dữ liệu đầu vào trực quan.

Điều kiện tiên quyết

Trước khi cài đặt, hãy chuẩn bị:

  • Node.js 22.12 trở lên và npm.
  • Docker với Compose hoặc quyền truy cập vào máy chủ MySQL 8 trở lên hiện có.
  • Khóa API OpenAI có quyền truy cập vào mô hình Chat Completions có khả năng xử lý hình ảnh.
  • Chrome được cài đặt thông qua Puppeteer nếu bạn muốn lấy hình ảnh từ các trang sản phẩm.
  • FFmpeg và FFprobe có sẵn trên PATH nếu bạn muốn thử xử lý video thử nghiệm.

FFmpeg là tùy chọn nếu bạn chỉ định tạo mô tả từ hình ảnh.

Cài đặt AI Writer tự động

Tập lệnh thiết lập tương tác là phương pháp cài đặt đơn giản nhất. Sao chép kho lưu trữ, truy cập thư mục của kho, chạy trình cài đặt và khởi động ứng dụng:

git clone https://github.com/csadigital/ai-writer.git
cd ai-writer
npm run setup
npm start

Trình cài đặt tải xuống các phần phụ thuộc của ứng dụng và Chrome, yêu cầu khóa API OpenAI mà không hiển thị khóa, tạo các khóa bí mật cho cơ sở dữ liệu và phiên, đồng thời khởi tạo MySQL. Trình cài đặt giữ nguyên các giá trị .env hiện có và tạo một bản sao lưu cục bộ.

Trong quá trình thiết lập, chọn docker để tự động khởi động một vùng chứa MySQL lâu dài. Docker phải được cài đặt và đang chạy. Chọn existing để kết nối với máy chủ MySQL của riêng bạn. Với thông tin xác thực quản trị viên, trình cài đặt có thể tạo cơ sở dữ liệu và người dùng ứng dụng riêng; trình cài đặt không lưu mật khẩu quản trị viên.

Sau khi khởi động, mở http://localhost:3000 trong trình duyệt.

Dừng cơ sở dữ liệu Docker

Để dừng vùng chứa MySQL cục bộ mà không xóa dữ liệu lâu dài, hãy chạy:

docker compose -f compose.mysql.yml stop

Việc thay đổi thông tin xác thực cơ sở dữ liệu trong .env không đặt lại volume Docker đã được khởi tạo trước đó. Hãy giữ thông tin xác thực ban đầu hoặc thực hiện quá trình di chuyển cơ sở dữ liệu có chủ đích.

Cài đặt AI Writer thủ công

Thiết lập thủ công cho phép bạn kiểm soát trực tiếp môi trường và cấu hình cơ sở dữ liệu. Sao chép dự án, cài đặt đúng các phần phụ thuộc và tạo tệp môi trường:

git clone https://github.com/csadigital/ai-writer.git
cd ai-writer
npm ci
cp .env.example .env
node -e "console.log(require('node:crypto').randomBytes(32).toString('hex'))"

Sao chép giá trị được tạo vào SESSION_SECRET trong .env. Khóa bí mật phải chứa ít nhất 32 ký tự. Sau đó thêm khóa API OpenAI và các thiết lập kết nối MySQL. Hãy sử dụng thông tin xác thực mới và không bao giờ commit tệp .env.

Tạo cơ sở dữ liệu và người dùng ứng dụng bằng tài khoản quản trị viên MySQL, cấp quyền truy cập cơ sở dữ liệu cho người dùng đó và khởi tạo các bảng bằng schema.sql:

mysql -h 127.0.0.1 -u ai_writer -p ai_writer < schema.sql
npm start

Mở http://localhost:3000, tạo tài khoản và đăng nhập.

Cấu hình môi trường

Ứng dụng đọc các thiết lập từ biến môi trường. Hãy cấu hình ít nhất thông tin xác thực OpenAI, khóa bí mật phiên và kết nối cơ sở dữ liệu.

  • OPENAI_API_KEY: Thông tin xác thực API OpenAI bắt buộc.
  • OPENAI_MODEL: Mô hình Chat Completions có khả năng xử lý hình ảnh. Giá trị mặc định là gpt-4.1-mini.
  • SESSION_SECRET: Khóa bí mật ngẫu nhiên bắt buộc, chứa ít nhất 32 ký tự.
  • DB_HOST và DB_PORT: Địa chỉ MySQL. Giá trị mặc định là 127.0.0.1 và 3306.
  • DB_USER và DB_PASSWORD: Thông tin xác thực ứng dụng MySQL cục bộ.
  • DB_NAME: Tên cơ sở dữ liệu. Giá trị mặc định là ai_writer.
  • PORT: Cổng HTTP của ứng dụng. Giá trị mặc định là 3000.
  • NODE_ENV: Chế độ chạy. Giá trị mặc định là development.
  • TRUST_PROXY: Thiết lập liệu ứng dụng có tin cậy một proxy ngược HTTPS hay không. Giá trị mặc định là 0.

Mô hình được chọn phải hỗ trợ đầu vào hình ảnh thông qua API Chat Completions. Xem hướng dẫn chính thức của OpenAI về đầu vào hình ảnh để biết hành vi yêu cầu tương thích.

Tạo Mô Tả Sản Phẩm Đầu Tiên

  1. Tạo tài khoản: Đăng ký qua ứng dụng cục bộ và đăng nhập. Mỗi tài khoản mới bắt đầu với mười lượt tín dụng.
  2. Thêm ảnh sản phẩm: Cung cấp từ một đến tám URL hình ảnh HTTPS công khai. Mô hình phải có thể truy cập các URL này.
  3. Chọn ngôn ngữ: Chọn tiếng Anh, tiếng Thổ Nhĩ Kỳ, tiếng Tây Ban Nha, tiếng Đức, tiếng Pháp hoặc tiếng Trung.
  4. Tạo bản nháp: Gửi hình ảnh để phân tích trực quan và tạo mô tả.
  5. Chỉnh sửa kết quả: Xem lại bản nháp trong trình duyệt và sửa các tuyên bố không có căn cứ, giọng văn hoặc thông tin sản phẩm chưa chính xác.
  6. Sao chép văn bản: Sao chép mô tả đã chỉnh sửa vào quy trình thương mại điện tử của bạn.

Mỗi lần tạo mô tả thành công sẽ tốn một lượt tín dụng. Nếu yêu cầu tạo không thành công, ứng dụng sẽ hoàn lại lượt tín dụng đã giữ trước đó.

Quy Trình Hình Ảnh Ví Dụ

Đối với sản phẩm có nhiều góc chụp, hãy cung cấp một nhóm nhỏ URL hình ảnh trực tiếp, chẳng hạn như:

https://example.com/products/item-front.jpg
https://example.com/products/item-side.jpg
https://example.com/products/item-detail.jpg

Chỉ sử dụng địa chỉ HTTPS công khai. Nhiều góc nhìn có thể cung cấp cho mô hình thêm ngữ cảnh trực quan, nhưng không thay thế các thông số đã được xác minh từ danh mục sản phẩm của bạn.

Tải Hình Ảnh Từ Trang Sản Phẩm

Thay vì thu thập thủ công từng URL hình ảnh, AI Writer có thể sử dụng Puppeteer để kiểm tra một trang sản phẩm công khai và thu thập các liên kết hình ảnh. Quy trình này yêu cầu bản cài đặt Chrome do Puppeteer quản lý.

  1. Cung cấp URL trang sản phẩm công khai cho quy trình tải trang.
  2. Để ứng dụng thu thập các liên kết hình ảnh tiềm năng.
  3. Chọn những ảnh sản phẩm phù hợp từ các kết quả đã tải.
  4. Tạo và xem lại mô tả như bình thường.

Chỉ xử lý những trang và hình ảnh mà bạn được phép sử dụng. Đối với triển khai công khai, tính năng tự động hóa trình duyệt nên được chạy trong sandbox và quyền truy cập mạng nên bị hạn chế.

Dịch Bản Nháp Có Sẵn

Sau khi tạo hoặc chỉnh sửa mô tả, hãy sử dụng thao tác dịch để tạo nội dung bằng một ngôn ngữ được hỗ trợ khác. Mỗi lần dịch thành công sẽ tốn một lượt tín dụng. Hãy xem lại văn bản đã dịch về thuật ngữ sản phẩm, giọng điệu thương hiệu và độ chính xác thực tế trước khi xuất bản.

Sử Dụng Quy Trình Video Thử Nghiệm

AI Writer có thể trích xuất tối đa tám khung hình từ một video YouTube ngắn và gửi các khung hình đó làm ngữ cảnh trực quan. Các khung hình cục bộ được gửi đến mô hình dưới dạng data URL vì API không thể truy cập các liên kết hình ảnh localhost.

Video phải đáp ứng tất cả các giới hạn sau:

  • Không được là video phát trực tiếp.
  • Không dài quá ba phút.
  • Không lớn hơn 50 MB.
  • FFmpeg và FFprobe phải có sẵn trên PATH.
  • Bạn phải được phép xử lý nội dung đa phương tiện.

Tính năng này phụ thuộc vào khả năng cung cấp của trình tải xuống YouTube bên ngoài, và YouTube có thể từ chối các lượt tải tự động. Việc xử lý không thành công sẽ hoàn lại lượt tín dụng đã giữ trước đó.

Phát Triển Và Kiểm Thử

Sử dụng lệnh phát triển trong khi thay đổi ứng dụng:

npm run dev

Chạy các bước kiểm tra dự án, kiểm thử tự động và kiểm tra các phụ thuộc dùng trong môi trường production bằng:

npm run check
npm test
npm audit --omit=dev

Bộ kiểm thử bao phủ xác thực, xoay vòng phiên, bảo vệ CSRF, xác thực URL, đầu ra đã escape, tạo hình ảnh, dịch, hoàn tín dụng và chi tín dụng song song. Các kiểm thử cục bộ cô lập cơ sở dữ liệu và dịch vụ AI, nên không sử dụng thông tin xác thực production hoặc thực hiện các lệnh gọi API mất phí. Tích hợp liên tục cũng tạo một máy chủ MySQL thực tạm thời để xác minh việc tạo schema trình cài đặt và quyền cấp cho người dùng cơ sở dữ liệu.

Mẹo Nâng Cao

Chọn Hình Ảnh Cẩn Thận

Sử dụng những ảnh rõ nét, thể hiện sản phẩm từ các góc hữu ích. Giữ yêu cầu trong giới hạn từ một đến tám hình ảnh. Nhiều ảnh hơn nên bổ sung thông tin trực quan có ý nghĩa thay vì lặp lại cùng một góc nhìn.

Giữ Dữ Liệu Thực Tế Ngoài Phạm Vi Suy Đoán Từ Hình Ảnh

Không xem các tuyên bố do hệ thống tạo về kích thước, thành phần hoặc chứng nhận là thông tin có thẩm quyền. Bổ sung các thông số đã được xác minh từ hệ thống kho hàng hoặc hệ thống thông tin sản phẩm trong quá trình chỉnh sửa.

Bảo Vệ Bí Mật Và Quyền Truy Cập Cơ Sở Dữ Liệu

Giữ tệp .env ở chế độ riêng tư, sử dụng thông tin xác thực cơ sở dữ liệu chuyên dụng và tránh đưa khóa API hoặc bí mật phiên vào kho mã. Nếu sử dụng máy chủ MySQL hiện có, chỉ cấp cho người dùng ứng dụng quyền truy cập vào cơ sở dữ liệu được chỉ định.

Chuẩn Bị Trước Khi Triển Khai Công Khai

Đọc hướng dẫn triển khai của kho mã trước khi đưa AI Writer lên internet. Máy chủ công khai yêu cầu HTTPS, quyền kết nối mạng ra ngoài bị hạn chế và trình duyệt chạy trong sandbox. Chỉ xác thực DNS không phải là biện pháp phòng vệ đầy đủ trước tấn công rebinding DNS.

Hệ thống tín dụng tích hợp giúp giới hạn chi phí, nhưng dự án không bao gồm tích hợp thanh toán, tự động mua tín dụng, khôi phục mật khẩu hoặc xác minh email. Việc xuất bản kho mã cũng không tạo ra ứng dụng được lưu trữ hay bản dùng thử trực tiếp.

Tìm Hiểu Các Tệp Chính Của Dự Án

  • app.js: Ứng dụng Express cùng các tuyến tài khoản và tín dụng.
  • db.js: Pool kết nối MySQL.
  • youtube.js: Quy trình video thử nghiệm có giới hạn.
  • lib/ai.js: Các yêu cầu đến mô hình và lời nhắc đa ngôn ngữ.
  • lib/network.js: Xác thực URL HTTPS công khai.
  • views/: Các trang EJS và bố cục dùng chung.
  • public/: Kiểu dáng, mã trình duyệt và bộ nhận diện thương hiệu.
  • schema.sql: Bảng cơ sở dữ liệu tài khoản.
  • scripts/setup.js: Trình cài đặt tương tác.
  • compose.mysql.yml: Dịch vụ MySQL cục bộ tùy chọn.
  • test/: Các kiểm tra hồi quy tự động.

Kết luận

AI Writer cung cấp quy trình cục bộ thiết thực để chuyển đổi ảnh sản phẩm thành bản nháp thương mại điện tử đa ngôn ngữ. Hãy bắt đầu bằng trình cài đặt tương tác, kết nối một mô hình OpenAI có khả năng xử lý hình ảnh, thêm hình ảnh HTTPS công khai và xem xét mọi kết quả trước khi xuất bản. Các tính năng tài khoản, tín dụng, dịch thuật và kiểm thử tạo nền tảng vững chắc, nhưng việc triển khai trong môi trường production vẫn đòi hỏi kiểm soát cẩn thận việc cô lập trình duyệt, kiểm soát mạng và HTTPS.