Mục lục (31)Bài này thuộc chuỗi nào?Bạn sẽ xây gì?Mental model: từ text tự do sang hợp đồng dữ liệuVì sao không nên luôn dùng structured output?Chuẩn bị1. Python và dependency2. Cấu hình providerProject layoutMã nguồn hoàn chỉnhpyproject.toml.env.examplemain.pylocal_openai_structured_stub.pyChạy ví dụCách A: provider thậtCách B: local stub, không cần provider thậtGiải thích các dòng quan trọngProductReview là schema, không phải promptToolStrategy và tool_message_contentresult["structured_response"] là điểm giao tiếp với codeStructured output và agent loopStructured output có validation nhưng không thay thế business rulesTroubleshootingChưa có OPENAI_API_KEY404 hoặc 401 từ OpenAI-compatible endpointKeyError: 'structured_response'Lỗi validation của PydanticKết quả đúng schema nhưng sai ý nghĩaĐiểm cốt lõiBài tiếp theoNguồn tham khảoBài viếtLangChain Lesson 6: Chuẩn hóa dữ liệu bằng structured output và PydanticlangchainPythonllmAI Agent