1. Giới thiệu về Copilot Studio và Hướng dẫn Bắt đầu [0]

thumbnail Copilot Studio là một công cụ cho phép người dùng xây dựng các trợ lý AI tùy chỉnh, còn gọi là "copilot agents", bằng cách tích hợp kiến thức từ nhiều nguồn và điều khiển luồng hội thoại.

1.1. Tổng quan về Khóa học [0]

  1. Mục tiêu của video: Hướng dẫn chi tiết cho người mới bắt đầu về cách xây dựng trợ lý AI tùy chỉnh bằng Copilot Studio. [0]
  2. Nội dung chính sẽ được đề cập:
    • Cách tạo copilot bằng mô tả hoặc mẫu có sẵn. [3]
    • Các phương pháp thêm kiến thức cho copilot từ nhiều nguồn khác nhau. [4]
    • Tầm quan trọng của việc xây dựng các chủ đề (topics) và điều khiển luồng hội thoại (conversational orchestration). [5]
    • Cách sử dụng entities và variables để copilot hiểu rõ hơn về cuộc trò chuyện. [5]
    • Khả năng cho phép copilot thực hiện hành động thông qua các flows hoặc lấy thông tin. [6]
    • Các tùy chọn xuất bản copilot và các chức năng khác. [7]
  3. Tầm quan trọng của Copilot Studio: Được đánh giá là kỹ năng chiến lược và hữu ích nhất trong Power Platform vào cuối năm 2024, là công cụ để xây dựng copilot agent tùy chỉnh và mở rộng Microsoft 365 Copilot. [10]
  4. Tương lai của Copilot Agents: Lộ trình phát triển hứa hẹn nhiều tính năng thú vị và ngày càng gần với trải nghiệm của Microsoft 365 Copilot. [11]

1.2. Bắt đầu với Copilot Studio [12]

  1. Truy cập Copilot Studio: Truy cập trang web copilotstudio.microsoft.com và đăng ký dùng thử miễn phí. [14]
    • Cần có tài khoản công việc hoặc trường học để đăng ký. [17]
    • Không cần thanh toán cho đến khi sẵn sàng xuất bản copilot. [16]
  2. Quy trình tạo Copilot ban đầu:
    • Trang chủ sẽ hiển thị giao diện "Copilot giúp bạn xây dựng Copilot". [18]
    • Nhập mô tả ngắn gọn về cách copilot sẽ hỗ trợ người dùng (ví dụ: "Giúp họ tìm thông tin về lối sống lành mạnh"). [20]
    • Copilot sẽ giúp thiết lập ban đầu bằng cách kết nối với một trang web (có thể bỏ qua bước này). [27]
    • Cung cấp các hướng dẫn tùy chỉnh (custom instructions) về giọng điệu, cách trả lời (ví dụ: "thân thiện, rõ ràng, không dùng thuật ngữ y tế"). [29]
    • Chỉ định nguồn kiến thức ban đầu (ví dụ: một trang web công cộng). [33]
    • Xác định các chủ đề hoặc nhiệm vụ mà copilot không nên hỗ trợ (ví dụ: không khuyến nghị dịch vụ y tế cụ thể). [37]
  3. Hoàn tất tạo Copilot:
    • Copilot xác nhận lại các thông tin đã cung cấp. [42]
    • Nhấn "Create" để hệ thống tự động thiết lập copilot. [43]
    • Trong quá trình này, "Copilot" và "Copilot agent" có thể được sử dụng thay thế cho nhau, với "Copilot agent" là thuật ngữ hiện đại hơn. [45]

1.3. Giao diện và Cấu hình Copilot [50]

  1. Giao diện Copilot sau khi tạo:
    • Copilot tự động chọn tên dựa trên mô tả ban đầu. [52]
    • Phần "Instructions" tổng hợp các yêu cầu về mục đích và cách trả lời của copilot. [53]
    • Phần "Knowledge" hiển thị nguồn kiến thức đã kết nối (ví dụ: trang web "The Better Health Channel"). [56]
    • "General knowledge" được bật, cho phép copilot sử dụng mô hình ngôn ngữ lớn (LLM) để trả lời các câu hỏi không có trong nguồn kiến thức cụ thể. [60]
  2. Kiểm tra Copilot:
    • Copilot có thể trả lời các câu hỏi dựa trên nội dung trang web được cung cấp. [64]
    • Ví dụ: Hỏi "Làm thế nào để quản lý sự mệt mỏi?" và copilot đưa ra các mẹo và tham chiếu đến nguồn. [64]
  3. Giới hạn của việc chỉ dựa vào trang web:
    • Việc chỉ trỏ copilot vào một trang web và sử dụng AI tạo sinh để trả lời là chưa đủ cho hầu hết các trường hợp sử dụng thực tế. [69]
    • Cần có kỹ năng thiết kế và tư duy để điều khiển copilot trả lời theo cách mong muốn, tham chiếu đến các nguồn kiến thức khác và thực hiện các hành động cụ thể. [73]

2. Quản lý Kiến thức cho Copilot [88]

thumbnail Copilot Studio cho phép tích hợp kiến thức từ nhiều nguồn khác nhau, bao gồm trang web, tài liệu tải lên, SharePoint và Dataverse, giúp copilot cung cấp thông tin chính xác và toàn diện hơn.

2.1. Thêm Kiến thức từ Trang web [88]

  1. Khái niệm về Kiến thức (Knowledge):
    • Phần "Knowledge" trong Copilot Studio là nơi quản lý các nguồn thông tin mà copilot có thể truy cập. [95]
    • Mỗi nguồn kiến thức có thể có mô tả để giúp AI hiểu rõ hơn về nội dung của nó. [101]
    • Mô tả này rất quan trọng, đặc biệt khi có nhiều nguồn kiến thức, để AI có thể chọn đúng nguồn khi cần. [104]
  2. Chỉnh sửa Nguồn kiến thức:
    • Có thể chỉnh sửa tên và mô tả của nguồn kiến thức đã thêm. [98]
    • Ví dụ: Đổi tên "Better Health Website" và thêm mô tả chi tiết về nội dung cung cấp. [107]
  3. Hạn chế của Trang web có JavaScript hoặc Bảng phức tạp:
    • Copilot có thể gặp khó khăn trong việc đọc nội dung từ các trang web sử dụng nhiều JavaScript hoặc hiển thị dữ liệu dưới dạng bảng phức tạp. [114]
    • Ví dụ: Trang web dự báo phấn hoa của Melbourne sử dụng bảng đẹp mắt nhưng khó để AI đọc được từ mã nguồn. [116]
    • Nếu AI không thể truy cập thông tin từ trang web (tương tự như Google hoặc Bing không tìm thấy), copilot cũng sẽ không tìm thấy. [150]
  4. Thêm nhiều Trang web:
    • Có thể thêm nhiều trang web làm nguồn kiến thức. [118]
    • Ví dụ: Thêm trang web dự báo phấn hoa của Melbourne, mặc dù có thể gặp hạn chế về khả năng đọc dữ liệu. [119]
  5. Kiểm tra Khả năng Truy cập Dữ liệu:
    • Khi "General knowledge" được bật, copilot có thể sử dụng LLM để trả lời các câu hỏi ngay cả khi dữ liệu không được truy cập trực tiếp từ nguồn kiến thức. [134]
    • Khi "General knowledge" bị tắt, copilot chỉ có thể trả lời dựa trên các nguồn kiến thức đã cung cấp. [135]
    • Nếu trang web có cấu trúc phức tạp hoặc sử dụng JavaScript, copilot có thể không tìm thấy câu trả lời chính xác từ nguồn đó. [148]

2.2. Tải lên Tài liệu [152]

  1. Tải lên Tệp:
    • Copilot Studio cho phép tải lên các tệp tài liệu làm nguồn kiến thức. [153]
    • Các định dạng tệp được hỗ trợ bao gồm PDF, Word, và có thể cả Excel (mặc dù không khuyến khích cho dữ liệu có cấu trúc). [169]
    • Tài liệu được tải lên sẽ được xử lý và lập chỉ mục trong Dataverse. [165]
  2. Ví dụ: Hướng dẫn Chế độ ăn uống của Úc:
    • Tải lên tệp PDF "Australian dietary guidelines" để copilot có thể truy vấn thông tin về khẩu phần ăn tiêu chuẩn. [156]
    • Cung cấp mô tả chi tiết cho tệp tải lên để AI hiểu rõ nội dung. [161]
  3. Truy vấn Thông tin từ Tài liệu:
    • Copilot có thể trả lời các câu hỏi dựa trên nội dung tài liệu đã tải lên. [177]
    • Ví dụ: Hỏi "Một khẩu phần bánh mì tiêu chuẩn là bao nhiêu?" và copilot trả lời dựa trên tài liệu. [177]
    • Khi truy vấn từ tài liệu, copilot hiển thị phần trích xuất từ tài liệu thay vì liên kết đến nguồn gốc như trang web. [179]
  4. Lưu ý về Định dạng:
    • Copilot hoạt động tốt nhất với các khối văn bản không có cấu trúc. [173]
    • Định dạng gốc của tài liệu có thể bị mất khi hiển thị trong copilot. [179]

2.3. Các Nguồn Kiến thức Khác [181]

  1. SharePoint:
    • Cho phép kết nối với thư viện tài liệu SharePoint làm nguồn kiến thức. [183]
    • Yêu cầu thiết lập xác thực để người dùng có thể truy cập. [183]
  2. Dataverse:
    • Cho phép kết nối trực tiếp với các bảng trong Dataverse. [185]
    • Cũng yêu cầu thiết lập xác thực. [185]
  3. Kết nối Dữ liệu Doanh nghiệp (Enterprise Data Connections):
    • Có thể kết nối với các nguồn dữ liệu của bên thứ ba nếu các kết nối đã được thiết lập. [188]
  4. Tầm quan trọng của Kiến thức được Kiểm soát:
    • Tính năng kiến thức mới cho phép cung cấp cho copilot một bộ kiến thức được kiểm soát, thay vì chỉ dựa vào LLM hoặc Microsoft 365 Copilot. [190]
    • Điều này hữu ích khi cần giới hạn phạm vi trả lời của copilot. [191]

3. Điều khiển Luồng Hội thoại với Topics [193]

thumbnail Topics là các luồng hội thoại được định nghĩa trước, cho phép người dùng kiểm soát cách copilot tương tác, điều hướng cuộc trò chuyện và quyết định khi nào sử dụng kiến thức có sẵn hoặc thực hiện hành động.

3.1. Khái niệm về Topics [193]

  1. Mục đích của Topics:
    • Kiểm soát luồng thông tin và tránh việc AI tạo sinh chịu trách nhiệm hoàn toàn cho mọi câu trả lời. [194]
    • Cho phép điều hướng cuộc trò chuyện, lựa chọn nguồn kiến thức, sử dụng các câu trả lời cố định, biến số và thực hiện hành động. [195]
  2. Vị trí của Topics: Tất cả các Topics được quản lý trong menu "Topics". [196]
  3. Loại Topics:
    • Custom Topics: Các Topics do người dùng tự tạo để xử lý các tình huống cụ thể. [201]
    • System Topics: Các Topics chức năng giúp copilot hoạt động (ví dụ: Conversation start, Escalation, Error handling, Feedback). [201]
  4. Các System Topics Quan trọng:
    • Conversation start topic: Xác định thông điệp chào mừng ban đầu của copilot. [206]
    • Có thể tùy chỉnh tên copilot và thông điệp chào mừng. [211]
    • Lưu ý: Nút "Save" có thể trông mờ đi nhưng vẫn hoạt động. [219]

3.2. Tạo Custom Topic [224]

  1. Tạo Topic "Emergency":
    • Mục tiêu: Xử lý các câu hỏi về tình huống khẩn cấp, cung cấp thông tin liên hệ khẩn cấp. [225]
    • Thêm một Topic mới và đặt tên là "Emergency". [230]
    • Cung cấp mô tả cho Topic để copilot hiểu mục đích (ví dụ: "Tạo một chủ đề để thông báo cho người dùng gọi số khẩn cấp 000"). [231]
  2. Trigger Phrases (Cụm từ Kích hoạt):
    • Copilot tự động tạo các cụm từ kích hoạt dựa trên mô tả Topic. [235]
    • Các cụm từ này giúp copilot nhận diện ý định của người dùng và chuyển đến Topic phù hợp. [238]
    • Có thể chỉnh sửa các cụm từ này nếu cần. [240]
  3. Nội dung Topic:
    • Trong trường hợp khẩn cấp, copilot sẽ trả lời: "Ở Úc, số khẩn cấp là 000". [229]
    • Topic này sẽ không sử dụng các nguồn kiến thức đã kết nối, mà cung cấp câu trả lời trực tiếp. [243]
  4. Tầm quan trọng của việc Kiểm soát Topic:
    • Rất quan trọng đối với các vấn đề nhạy cảm như pháp lý, quy định, an toàn hoặc thương hiệu. [244]
    • Hầu hết các copilot trong tình huống thực tế đều cần được kiểm soát luồng hội thoại ở một mức độ nào đó. [247]
  5. Nâng cấp sang Chế độ Generative AI Preview:
    • Chuyển sang chế độ "Generative AI Preview" để sử dụng mô hình ngôn ngữ lớn trong việc xác định luồng hội thoại, thay vì chỉ dựa vào cụm từ kích hoạt cổ điển. [248]
    • Chế độ này sử dụng mô tả của Topic và các nguồn kiến thức để xác định hành động phù hợp. [252]
    • Mô tả của các Topic và nguồn kiến thức trở nên cực kỳ quan trọng trong chế độ này và là điểm cần kiểm tra khi gặp sự cố. [258]

3.3. Entities và Variables [260]

  1. Khái niệm Entities:
    • Entities là các mẩu dữ liệu có cấu trúc hoặc đã biết nằm trong văn bản không có cấu trúc. [265]
    • Ví dụ: Tuổi, màu sắc, tên thành phố, tên tổ chức. [268]
    • Copilot có thể nhận diện và trích xuất entities từ câu trả lời của người dùng. [268]
    • Có thể tạo entities tùy chỉnh cho ngôn ngữ riêng của bạn. [271]
  2. Khái niệm Variables:
    • Variables (biến) lưu trữ thông tin được trích xuất (ví dụ: từ entities) để có thể sử dụng lại trong cuộc trò chuyện. [307]
    • Có thể đặt biến là cục bộ (chỉ trong Topic) hoặc toàn cục (sử dụng được ở bất kỳ đâu trong agent). [314]
  3. Tạo Topic "Mental health support services":
    • Mục tiêu: Hướng dẫn người dùng đến các dịch vụ hỗ trợ sức khỏe tâm thần dựa trên độ tuổi. [261]
    • Tạo một Topic mới từ đầu. [296]
    • Sử dụng chức năng "Ask a question" để hỏi tuổi của người cần hỗ trợ. [304]
    • Chọn "Age" làm loại thông tin cần xác định (entity). [304]
    • Lưu phản hồi của người dùng vào một biến có tên là Age. [307]
  4. Điều kiện (Conditions) dựa trên Entities:
    • Thiết lập các điều kiện dựa trên giá trị của biến Age. [316]
    • Ví dụ:
      • Nếu Age <= 12: Gửi tin nhắn giới thiệu dịch vụ "Triple P". [317]
      • Nếu Age >= 13 và Age <= 25: Gửi tin nhắn giới thiệu dịch vụ "Headspace" kèm theo hình ảnh và liên kết. [319]
      • Các trường hợp khác: Chuyển hướng đến một trang web hoặc sử dụng câu trả lời tạo sinh. [339]
  5. Sử dụng Cards và Media trong Tin nhắn:
    • Có thể sử dụng các loại thẻ (cards) khác nhau để hiển thị thông tin, bao gồm hình ảnh, video và nút bấm. [331]
    • Ví dụ: Hiển thị hình ảnh logo Headspace và liên kết đến trang dịch vụ của họ. [337]
  6. Sử dụng Generative Answers trong Topic:
    • Trong trường hợp "all other conditions", có thể sử dụng chức năng "Generate answers" để copilot tìm kiếm thông tin từ các nguồn kiến thức đã định cấu hình (ví dụ: một trang web cụ thể về sức khỏe tâm thần). [340]
  7. Kiểm tra và Tinh chỉnh:
    • Copilot có thể xác định entities ngay cả khi người dùng cung cấp thông tin không trực tiếp (ví dụ: "Con tôi 6 tuổi"). [359]
    • Có thể cấu hình để bỏ qua câu hỏi nếu thông tin đã có sẵn trong cuộc trò chuyện. [361]
    • Sử dụng "Conversation map" để theo dõi luồng hội thoại và cách copilot xử lý entities. [353]

4. Thực hiện Hành động với Actions [365]

thumbnail Actions cho phép copilot thực hiện các tác vụ bên ngoài, như lấy thông tin thời tiết hoặc xử lý dữ liệu từ các hệ thống khác thông qua API hoặc Power Automate flows.

4.1. Sử dụng API Actions [365]

  1. Mục đích của Actions: Cho phép copilot thực hiện các tác vụ, lấy thông tin từ thế giới bên ngoài. [365]
  2. Các loại Actions:
    • API Actions: Kết nối với các API bên ngoài (ví dụ: API dự báo thời tiết MSN). [368]
    • Power Automate Flows: Tích hợp với các quy trình tự động hóa được xây dựng trong Power Automate. [371]
    • Connectors và Custom Connectors: Sử dụng các kết nối đã có trong Power Platform. [373]
  3. Ví dụ: Dự báo Thời tiết:
    • Sử dụng API "MSN weather forecasting tool" để lấy thông tin thời tiết. [374]
    • Cấu hình xác thực là "Copilot author authentication" để người dùng không cần đăng nhập. [376]
  4. Cấu hình Inputs và Outputs:
    • Inputs: Xác định các thông tin cần thiết để thực hiện hành động (ví dụ: Location, Units - hệ đo lường). [378]
    • Outputs: Xác định các thông tin mà hành động sẽ trả về (ví dụ: Wind direction, Precipitation). [380]
    • Có thể chỉnh sửa danh sách outputs để chỉ lấy những thông tin cần thiết. [381]
  5. Kiểm tra và Xử lý Lỗi:
    • Khi gọi hành động, copilot có thể yêu cầu thêm thông tin nếu thiếu input cần thiết (ví dụ: thiếu đơn vị đo lường). [386]
    • Copilot có khả năng xác định thông tin còn thiếu và yêu cầu người dùng cung cấp. [391]
    • Sau khi cung cấp đủ thông tin (ví dụ: chọn đơn vị Celsius), hành động sẽ thực hiện và trả về kết quả. [395]
  6. Cấu hình Phản hồi cho Người dùng:
    • Sau khi hành động hoàn tất, copilot có thể tự động tạo tin nhắn phản hồi hoặc cho phép người dùng tạo tin nhắn tùy chỉnh. [404]
    • Có thể sử dụng các biến từ output của hành động để xây dựng tin nhắn. [406]

4.2. Sử dụng Power Automate Flows [408]

  1. Tích hợp với Power Automate:
    • Cho phép copilot gọi các flows được tạo trong Power Automate để xử lý các tác vụ phức tạp hơn. [410]
  2. Ví dụ: Lấy Dự báo Phấn hoa từ Excel:
    • Vấn đề: Copilot không đọc được dữ liệu từ bảng trên trang web dự báo phấn hoa. [410]
    • Giải pháp: Lưu dữ liệu vào một bảng Excel trực tuyến (OneDrive/SharePoint) và sử dụng Power Automate để đọc dữ liệu đó. [412]
    • Yêu cầu: Tệp Excel phải được định dạng dưới dạng bảng và lưu trữ trên OneDrive hoặc SharePoint. [418]
  3. Xây dựng Flow trong Power Automate:
    • Tạo một flow mới có đầu vào (input) là tên khu vực (region) từ người dùng. [428]
    • Sử dụng connector "Excel Online" để "Get a row" (lấy một hàng) dựa trên khu vực được cung cấp. [431]
    • Xác định tệp Excel, bảng và cột cần tìm kiếm. [434]
    • Thiết lập đầu ra (output) của flow là giá trị dự báo phấn hoa từ cột tương ứng. [445]
    • Đặt tên cho flow (ví dụ: "look up pollen forecast"). [449]
  4. Kết nối Flow với Copilot Studio:
    • Sau khi lưu và xuất bản flow, nó sẽ xuất hiện trong danh sách các actions có thể gọi từ Copilot Studio. [456]
    • Chọn flow đã tạo và cấu hình input (region từ phản hồi người dùng) và output (pollen forecast). [458]
    • Cấu hình cách copilot phản hồi người dùng với kết quả từ flow (ví dụ: tạo tin nhắn tùy chỉnh). [459]
  5. Kiểm tra và Xác thực Kết nối:
    • Lần đầu sử dụng một kết nối (ví dụ: Excel Online), người dùng có thể cần thực hiện xác thực một lần. [468]
    • Sau khi xác thực thành công, copilot có thể truy vấn dữ liệu và trả về kết quả (ví dụ: "The forecast is low"). [476]

4.3. Các Loại Actions Nâng cao [478]

  1. AI Builder Prompts: Sử dụng các prompt AI Builder để thực hiện các tác vụ AI phức tạp hơn. [480]
  2. Các Loại Connectors Khác: Có thể sử dụng nhiều loại connectors khác nhau để tích hợp với các hệ thống và dịch vụ đa dạng. [479]

5. Xuất bản và Cấu hình Copilot [482]

thumbnail Sau khi xây dựng, copilot có thể được xuất bản ra nhiều kênh khác nhau, từ trang web đến Microsoft Teams, sau khi cấu hình các cài đặt như biểu tượng và bảo mật.

5.1. Cấu hình và Xuất bản [482]

  1. Cài đặt Copilot:
    • Tên và Biểu tượng: Có thể thay đổi tên copilot và tải lên biểu tượng tùy chỉnh (định dạng PNG). [484]
    • Biểu tượng nên có nền trắng và nằm trong một hình tròn để hiển thị tốt nhất. [487]
  2. Cài đặt Bảo mật (Security):
    • Xác thực (Authentication):
      • Đối với copilot công khai, chọn "No authentication" để không yêu cầu người dùng đăng nhập. [489]
      • Nếu cần kết nối với các nguồn yêu cầu xác thực (như SharePoint), có thể cấu hình các tùy chọn xác thực khác. [488]
  3. Xuất bản (Publish):
    • Nhấn nút "Publish" để đưa copilot vào hoạt động. [490]
    • Quá trình xuất bản có thể mất một chút thời gian. [491]
  4. Các Kênh Xuất bản (Channels):
    • Nội bộ (Internal): Microsoft Teams. [493]
    • Bên ngoài (External): Trang web, Twilio, Facebook, ứng dụng di động, hệ thống dịch vụ khách hàng của bên thứ ba. [493]
    • Demo Website: Một kênh đơn giản để thử nghiệm copilot trong quá trình học. [499]
  5. Cấu hình Kênh Demo Website:
    • Thiết lập tin nhắn chào mừng (welcome message) và các gợi ý bắt đầu cuộc trò chuyện (conversation starters). [501]
    • Sao chép liên kết trang web demo để truy cập copilot đã xuất bản. [502]

5.2. Thử nghiệm Copilot đã Xuất bản [503]

  1. Truy cập Copilot: Mở liên kết trang web demo trong một tab trình duyệt mới. [504]
  2. Tương tác với Copilot:
    • Copilot đã xuất bản có thể kết nối với nhiều nguồn kiến thức (hai trang web, một bảng Excel, một tài liệu) và sử dụng các Topics đã tạo. [505]
    • Ví dụ: Hỏi về tình huống sức khỏe ("What happens if I'm diagnosed with diabetes?"). [505]
  3. Các Tính năng Sắp ra mắt:
    • Voice Capabilities: Khả năng tương tác bằng giọng nói. [509]
    • Tự động hóa Nâng cao: Agents có thể hoạt động độc lập hơn. [510]
  4. Mở rộng Microsoft 365 Copilot:
    • Kiến thức học được từ Copilot Studio có thể được sử dụng để mở rộng Microsoft 365 Copilot, kết nối nó với các hệ thống khác. [512]
    • Ví dụ: Field Service Agent trong Teams sử dụng giao diện tương tự như khi bắt đầu với Copilot Studio. [514]
  5. Tầm quan trọng của Kỹ năng: Việc học Copilot Studio được nhấn mạnh là một trong những kỹ năng quan trọng nhất hiện nay. [516]