enum으로 제어 생성 JSON 출력
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
객체 설명과 선택할 값 목록을 제공하면 enum 값이 있는 JSON 형식 객체를 출력합니다.
코드 샘플
달리 명시되지 않는 한 이 페이지의 콘텐츠에는 Creative Commons Attribution 4.0 라이선스에 따라 라이선스가 부여되며, 코드 샘플에는 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 Google Developers 사이트 정책을 참조하세요. 자바는 Oracle 및/또는 Oracle 계열사의 등록 상표입니다.
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["이해하기 어려움","hardToUnderstand","thumb-down"],["잘못된 정보 또는 샘플 코드","incorrectInformationOrSampleCode","thumb-down"],["필요한 정보/샘플이 없음","missingTheInformationSamplesINeed","thumb-down"],["번역 문제","translationIssue","thumb-down"],["기타","otherDown","thumb-down"]],[],[],[],null,["# Controlled generation JSON output with enum\n\nOutput JSON formatted object with an enum value, given a description of the object and a list of values to choose from.\n\nCode sample\n-----------\n\n### C#\n\n\nBefore trying this sample, follow the C# setup instructions in the\n[Vertex AI quickstart using\nclient libraries](/vertex-ai/docs/start/client-libraries).\n\n\nFor more information, see the\n[Vertex AI C# API\nreference documentation](/dotnet/docs/reference/Google.Cloud.AIPlatform.V1/latest).\n\n\nTo authenticate to Vertex AI, set up Application Default Credentials.\nFor more information, see\n\n[Set up authentication for a local development environment](/docs/authentication/set-up-adc-local-dev-environment).\n\n public async Task\u003cstring\u003e GenerateContentWithResponseSchema4(\n string projectId = \"your-project-id\",\n string location = \"us-central1\",\n string publisher = \"google\",\n string model = \"gemini-2.0-flash-001\")\n {\n\n var predictionServiceClient = new PredictionServiceClientBuilder\n {\n Endpoint = $\"{location}-aiplatform.googleapis.com\"\n }.Build();\n\n var responseSchema = new OpenApiSchema\n {\n Type = Type.Array,\n Items = new()\n {\n Type = Type.Object,\n Properties =\n {\n [\"to_discard\"] = new() { Type = Type.Integer },\n [\"subcategory\"] = new() { Type = Type.String },\n [\"safe_handling\"] = new() { Type = Type.Integer },\n [\"item_category\"] = new()\n {\n Type = Type.String,\n Enum =\n {\n \"clothing\",\n \"winter apparel\",\n \"specialized apparel\",\n \"furniture\",\n \"decor\",\n \"tableware\",\n \"cookware\",\n \"toys\"\n }\n },\n [\"for_resale\"] = new() { Type = Type.Integer },\n [\"condition\"] = new()\n {\n Type = Type.String,\n Enum =\n {\n \"new in package\",\n \"like new\",\n \"gently used\",\n \"used\",\n \"damaged\",\n \"soiled\"\n }\n }\n }\n }\n };\n\n string prompt = @\"\n Item description:\n The item is a long winter coat that has many tears all around the seams and is falling apart.\n It has large questionable stains on it.\";\n\n var generateContentRequest = new GenerateContentRequest\n {\n Model = $\"projects/{projectId}/locations/{location}/publishers/{publisher}/models/{model}\",\n Contents =\n {\n new Content\n {\n Role = \"USER\",\n Parts =\n {\n new Part { Text = prompt }\n }\n }\n },\n GenerationConfig = new GenerationConfig\n {\n ResponseMimeType = \"application/json\",\n ResponseSchema = responseSchema\n },\n };\n\n GenerateContentResponse response = await predictionServiceClient.GenerateContentAsync(generateContentRequest);\n\n string responseText = response.Candidates[0].Content.Parts[0].Text;\n Console.WriteLine(responseText);\n\n return responseText;\n }\n\nWhat's next\n-----------\n\n\nTo search and filter code samples for other Google Cloud products, see the\n[Google Cloud sample browser](/docs/samples?product=generativeaionvertexai)."]]