Tạo hàm tùy biến trong Google sheet để sử dụng AI

Với thông báo Gemini mở cửa cho các nhà phát triển, tôi vô cùng háo hức muốn thử nghiệm nó. Phải nói rằng tôi rất ấn tượng với hiệu suất của Gemini. Có rất nhiều đánh giá so sánh Gemini Pro với GPT-3.5 và GPT-4, và dường như Gemini Pro chiến thắng trong hầu hết các thử nghiệm. Là một người dùng hàng ngày của Trí tuệ Nhân tạo Sinh tạo, mối quan tâm chính của tôi thực sự là giá cả. Dưới đây là một so sánh nhanh (sử dụng quy đổi 1 token = 4 ký tự). Chúng ta có thể thấy rằng Gemini có giá gần tương đương với GPT-3.5 Turbo và chỉ bằng chưa đến 10% so với GPT-4 hoặc GPT-4 Turbo. Và bạn đoán xem, hiện tại Google đang cung cấp quyền truy cập miễn phí vào Gemini Pro miễn là Số Lượng Yêu Cầu Phút (QPM) nhỏ hơn 60.

Pricing Comparison (December 2023)

Dù sao thì, bài viết này không nhằm mục đích quảng cáo bất kỳ sản phẩm nào, mà là một số ví dụ đơn giản về cách chúng ta có thể sử dụng trí tuệ nhân tạo thế hệ mới (genAI) trong các công việc hàng ngày. Hôm nay, tôi sẽ thử sử dụng genAI trong Google Sheets để giúp tôi tạo một hàm tùy chỉnh để hỏi Gemini các câu hỏi từ các ô khác. Loại yêu cầu này thực sự rất phổ biến. Tôi sẽ sử dụng ví dụ dưới đây để minh họa.

  • Ô A1 là câu hỏi mẫu
  • Cột A là các biến cho câu hỏi
  • Hàm askGemini(inputText) là một Hàm Tùy Chỉnh sẽ gửi câu hỏi đến Gemini Pro để lấy câu trả lời

Lưu ý rằng bài viết này giả định rằng bạn có một số hiểu biết đơn giản về cách hoạt động của App Script trong Google Sheets. Nhưng bạn cũng có thể làm theo các bước mà không thực sự hiểu nó hoạt động như thế nào (không khuyến khích).

Tạo một dự án Google Cloud

Nếu bạn chưa có Dự án GCP, bạn có thể sử dụng liên kết này để tạo một dự án. Nó miễn phí và trong 3 tháng đầu tiên bạn sẽ có 300 đô la tín dụng để sử dụng trong hầu hết mọi thứ trên Google Cloud. Sau khi bạn đã tạo dự án, hãy đảm bảo rằng bạn đã bật API Vertex AI. Liên kết trên cũng nên giải thích cách thực hiện điều này.

Đăng nhập vào Google sheets

Hiện tại, hầu hết các cuộc gọi API đến GCP từ Google Sheets phải được thực hiện thông qua REST API. Để làm điều này, bước đầu tiên của chúng tôi là lấy token OAuth2 để xác thực chính mình.

Mở Apps Script bằng cách vào Extensions → Apps Script.

Trong Project Settings enable tùy chọn “Show appsscript.json manifest file in editor”

Mở appsscript.json file và thêm 3 oauth2 scope sau:

"oauthScopes": [
"https://www.googleapis.com/auth/spreadsheets.currentonly",
"https://www.googleapis.com/auth/script.external_request",
"https://www.googleapis.com/auth/cloud-platform"
]

Trong file mặc định Code.gs, hãy tạo một hàm mới auth(). Trong hàm này, chúng ta sẽ yêu cầu mã token và lưu trữ nó trong bộ nhớ cache vì Hàm Tùy Chỉnh không cho phép xác thực người dùng. Bộ nhớ cache nên giữ mã token trong 10 phút (mặc định) hoặc tối đa 6 giờ.

function auth() {
cache = CacheService.getUserCache();
token = ScriptApp.getOAuthToken();
cache.put("token", token);
}

Tạo một nút hoặc menu tùy chỉnh và gán hàm auth() vào đó. Để hàm tùy chỉnh của chúng ta gọi Gemini hoạt động, cần phải nhấn nút này để lấy mã token.

Bây giờ chúng ta cần sử dụng hàm UrlFetchApp() để gọi REST API. Dưới đây là ví dụ về cách thực hiện. Tham khảo tài liệu này về các tùy chọn cho API. Về cơ bản, một số giá trị bắt buộc là role mà chúng ta cần đặt giá trị “user” và parts mà chúng ta sẽ đặt lời nhắc.

function askGemini(inputText) {
cache = CacheService.getUserCache();
token = cache.get("token");
if (token == "") return "ERROR";
Logger.log(`Token = ${token}`);
url = `https://${REGION}-aiplatform.googleapis.com/v1/projects/${PROJECT_ID}/locations/${REGION}/publishers/google/models/gemini-pro:streamGenerateContent`
data = {
contents: {
role: "USER",
parts: { "text": inputText }
},
generation_config: {
temperature: 0.9,
topP: 1
}
}
const options = {
method: "post",
contentType: 'application/json',
headers: {
Authorization: `Bearer ${token}`,
},
payload: JSON.stringify(data)
};

const response = UrlFetchApp.fetch(url, options);
if (response.getResponseCode() == 200) {
json = JSON.parse(response.getContentText());
answer = json[0].candidates[0].content.parts[0].text;
return answer;
}
return "ERROR";
}

Lưu mã và nó có thể được sử dụng ngay lập tức, không cần deploy.

Một điều cần lưu ý về Hàm Tùy Chỉnh này là nó có thể được kiểm tra lại nhiều lần và sẽ gọi lại API liên tục. Có nhiều cách để ngăn chặn hành động này, chẳng hạn như sử dụng một câu lệnh IF() để kiểm tra xem giá trị có rỗng hay không, nếu không rỗng thì không gọi hàm lại.

Hy vọng đây là thông tin hữu ích cho những người mới bắt đầu thử nghiệm với genAI và muốn áp dụng nó vào công việc hàng ngày.

0 Lời bình

Gửi Lời bình

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Bạn cũng có thể đọc thêm:

Dùng google sheet với AI miễn phí

Mô hình AI mới nhất của Google, Gemini (trước đây được gọi là Bard), có thể được sử dụng trong trình duyệt của bạn cho các tác vụ hàng ngày. Một tính năng tuyệt vời khác là khả năng sử dụng nó theo cách tự động bằng cách tích hợp nó với các ứng dụng của bạn. May mắn...

Bắt đầu từ đâu với Generative AI

Nội dung:Giới thiệu về Generative AIHiểu các thuật ngữ GenAITrí tuệ nhân tạo (Artificial Intelligence)Máy học (Machine Learning)Xử lý ngôn ngữ tự nhiên - Natural Language Processing (NLP)Mô hình Transformer (Transformer Models)Trí tuệ nhân tạo tạo sinh (Generative AI...

Đi tìm cách triển khai tốt nhất cho RAG

Tóm tắt Các kỹ thuật RAG (Retrieval-Augmented Generation) đã chứng minh hiệu quả trong việc tích hợp thông tin cập nhật, giảm thiểu ảo giác và nâng cao chất lượng phản hồi, đặc biệt trong các lĩnh vực chuyên môn. Mặc dù nhiều phương pháp RAG đã được đề xuất để cải...

Lộ Trình Chuyển Đổi AI cho Doanh Nghiệp

Chuyển đổi AI Nội dung bài viết:1. Đánh giá hiện trạng và chuẩn bị Chuyển đổi AI2. Xây dựng chiến lược Chuyển đổi AI3. Triển khai thử nghiệm (Pilot Projects)4. Mở rộng ứng dụng AI5. Duy trì và cải tiến liên tục 1. Đánh giá hiện trạng và chuẩn bị Chuyển đổi AI Đánh giá...

Trở thành AI Agency cùng aichatbot.com.vn

AI automation agency Hướng dẫn từng bước để trở thành AI AgencyNhững lợi ích của việc trở thành AI AgencyCách để doanh nghiệp chọn đúng đối tác AI Agency Hướng dẫn từng bước để trở thành AI Agency Để trở thành một AI Agency thành công, điều quan trọng là phải có một...

AI Agent: Khắc phục những hạn chế của LLM

Một AI Agent là một thực thể phần mềm tự chủ, thường được sử dụng để gia tăng khả năng của một mô hình ngôn ngữ lớn. Đây là những điều nhà phát triển cần biết.   Với sự phát triển mạnh mẽ của các mô hình ngôn ngữ lớn (LLMs), một loại phần mềm mới được gọi là "trình...

Liên hệ