Hướng dẫn này cung cấp một phương pháp thực tế để triển khai ứng dụng bằng cách sử dụng lệnh gọi hàm với Gemma. Bạn có thể áp dụng kỹ thuật này cho nhiều phiên bản mô hình Gemma thông qua kỹ thuật lập trình lời nhắc cẩn thận. Bạn có thể tìm thêm thông tin trong bài viết Không chỉ là chatbot: AI đại diện với Gemma.
Giải thích về lệnh gọi hàm
Cấu trúc chung để gọi hàm bao gồm một số thành phần chính, được thiết kế để cho phép Gemma tương tác với các công cụ hoặc API bên ngoài.
Mô tả các công cụ
Bạn cho mô hình biết về "các công cụ" (hàm) mà mô hình có thể sử dụng. Nội dung như vậy bao gồm:- Chức năng của công cụ (nội dung mô tả)
- Thông tin mà công cụ cần (tham số)
Người dùng đặt câu hỏi
Bạn đặt câu hỏi hoặc giao việc cho mô hìnhGemma quyết định
Mô hình sẽ tìm hiểu xem có cần công cụ để trả lời câu hỏi của bạn hay không.Gemma yêu cầu một công cụ
Nếu cần một công cụ, Gemma sẽ tạo một mã được gói bằng ```tool_code```Công cụ thực hiện công việc của nó
Công cụ (hàm) lấy thông tin từ mô hình và thực hiện công việc mà nó được thiết kế để làm.Công cụ trả về kết quả
Gemma dự kiến sẽ nhận được kết quả được gói lại bằng ```tool_output```Gemma đưa ra câu trả lời cuối cùng
Mô hình sử dụng kết quả của công cụ để tạo câu trả lời đầy đủ và chính xác cho bạn.
Gợi ý hữu ích
- Giản đồ JSON: Việc sử dụng Giản đồ JSON cho các định nghĩa tham số (mặc dù không bắt buộc) mang lại các lợi thế về cấu trúc nhất quán và tính năng xác thực tự động.
- Thông tin rõ ràng: Chất lượng của nội dung mô tả hàm là yếu tố quan trọng để mô hình xác định chính xác thời điểm sử dụng hàm.
- Xử lý lỗi: Việc xử lý lỗi hiệu quả là điều cần thiết để quản lý các trường hợp lệnh gọi hàm không thành công hoặc trả về kết quả không mong muốn.
- Quy trình lặp lại: Đôi khi có nhiều lượt trò chuyện giữa mô hình và lệnh gọi hàm.
Câu lệnh và kết quả mẫu
Bạn có thể tìm thấy mã cho ứng dụng này trong kho lưu trữ mã Sách dạy nấu ăn Gemma.
Bước 1 và 2: Mô tả công cụ và đưa ra một nhiệm vụ
Đầu vào: Hình ảnh vui nhộn về một chú mèo
Văn bản đầu vào:
If you decide to invoke any of the function(s), it should be wrapped with ```tool_code```.
You have access to the following tools.
* `generate_meme(image, top_text, middle_text, bottom_text)`: Generate a meme with the given parameters
Make a funny meme with this. "meme.jpg"
Bước 3: Gemma quyết định và yêu cầu một công cụ
Câu lệnh này sẽ tạo ra phản hồi sau:
Okay, here's a funny meme based on the image of the surprised cat: ```tool_code generate_meme(image="meme.jpg", top_text="Me when I hear a creak", middle_text="Is it safe?", bottom_text="Probably not.") ```
Bước 4: Công cụ thực hiện công việc
Bạn sẽ xử lý đầu ra của mô hình bằng cách xác định các khối mã, phân tích cú pháp đối số hàm và thực thi các hàm.