画像からテキストを生成する
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
このサンプルでは、Gemini モデルを使用して画像からテキストを生成する方法を示します。
もっと見る
このコードサンプルを含む詳細なドキュメントについては、以下をご覧ください。
コードサンプル
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は 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,["This sample demonstrates how to use the Gemini model to generate text from an image.\n\nExplore further\n\n\nFor detailed documentation that includes this code sample, see the following:\n\n- [Gemini API in Vertex AI quickstart](/vertex-ai/generative-ai/docs/start/quickstart)\n- [Generate content with the Gemini API in Vertex AI](/vertex-ai/generative-ai/docs/model-reference/inference)\n- [Image understanding](/vertex-ai/generative-ai/docs/multimodal/image-understanding)\n- [Quickstart: Generate text using the Vertex AI Gemini API](/vertex-ai/generative-ai/docs/start/quickstarts/quickstart-multimodal)\n\nCode sample \n\nGo\n\n\nBefore trying this sample, follow the Go 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 Go API\nreference documentation](/go/docs/reference/cloud.google.com/go/aiplatform/latest/apiv1).\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 import (\n \t\"context\"\n \t\"fmt\"\n \t\"io\"\n\n \tgenai \"google.golang.org/genai\"\n )\n\n // generateWithTextImage shows how to generate text using both text and image input\n func generateWithTextImage(w io.Writer) error {\n \tctx := context.Background()\n\n \tclient, err := genai.NewClient(ctx, &genai.ClientConfig{\n \t\tHTTPOptions: genai.HTTPOptions{APIVersion: \"v1\"},\n \t})\n \tif err != nil {\n \t\treturn fmt.Errorf(\"failed to create genai client: %w\", err)\n \t}\n\n \tmodelName := \"gemini-2.5-flash\"\n \tcontents := []*genai.Content{\n \t\t{Parts: []*genai.Part{\n \t\t\t{Text: \"What is shown in this image?\"},\n \t\t\t{FileData: &genai.FileData{\n \t\t\t\t// Image source: https://storage.googleapis.com/cloud-samples-data/generative-ai/image/scones.jpg\n \t\t\t\tFileURI: \"gs://cloud-samples-data/generative-ai/image/scones.jpg\",\n \t\t\t\tMIMEType: \"image/jpeg\",\n \t\t\t}},\n \t\t},\n \t\t\tRole: \"user\"},\n \t}\n\n \tresp, err := client.Models.GenerateContent(ctx, modelName, contents, nil)\n \tif err != nil {\n \t\treturn fmt.Errorf(\"failed to generate content: %w\", err)\n \t}\n\n \trespText := resp.Text()\n\n \tfmt.Fprintln(w, respText)\n\n \t// Example response:\n \t// The image shows an overhead shot of a rustic, artistic arrangement on a surface that ...\n\n \treturn nil\n }\n\nJava\n\n\nBefore trying this sample, follow the Java 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 Java API\nreference documentation](/java/docs/reference/google-cloud-aiplatform/latest/com.google.cloud.aiplatform.v1).\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\n import com.google.genai.Client;\n import com.google.genai.types.Content;\n import com.google.genai.types.GenerateContentResponse;\n import com.google.genai.types.HttpOptions;\n import com.google.genai.types.Part;\n\n public class TextGenerationWithTextAndImage {\n\n public static void main(String[] args) {\n // TODO(developer): Replace these variables before running the sample.\n String modelId = \"gemini-2.5-flash\";\n generateContent(modelId);\n }\n\n // Generates text with text and image input\n public static String generateContent(String modelId) {\n // Initialize client that will be used to send requests. This client only needs to be created\n // once, and can be reused for multiple requests.\n try (Client client =\n Client.builder()\n .location(\"global\")\n .vertexAI(true)\n .httpOptions(HttpOptions.builder().apiVersion(\"v1\").build())\n .build()) {\n\n GenerateContentResponse response =\n client.models.generateContent(\n modelId,\n Content.fromParts(\n Part.fromText(\"What is shown in this image?\"),\n Part.fromUri(\n \"gs://cloud-samples-data/generative-ai/image/scones.jpg\", \"image/jpeg\")),\n null);\n\n System.out.print(response.text());\n // Example response:\n // The image shows a flat lay of blueberry scones arranged on parchment paper. There are ...\n return response.text();\n }\n }\n }\n\nNode.js\n\n\nBefore trying this sample, follow the Node.js 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 Node.js API\nreference documentation](/nodejs/docs/reference/aiplatform/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 const {GoogleGenAI} = require('@google/genai');\n\n const GOOGLE_CLOUD_PROJECT = process.env.GOOGLE_CLOUD_PROJECT;\n const GOOGLE_CLOUD_LOCATION = process.env.GOOGLE_CLOUD_LOCATION || 'global';\n\n async function generateContent(\n projectId = GOOGLE_CLOUD_PROJECT,\n location = GOOGLE_CLOUD_LOCATION\n ) {\n const ai = new GoogleGenAI({\n vertexai: true,\n project: projectId,\n location: location,\n });\n\n const image = {\n fileData: {\n fileUri: 'gs://cloud-samples-data/generative-ai/image/scones.jpg',\n mimeType: 'image/jpeg',\n },\n };\n\n const response = await ai.models.generateContent({\n model: 'gemini-2.5-flash',\n contents: [image, 'What is shown in this image?'],\n });\n\n console.log(response.text);\n\n return response.text;\n }\n\nPython\n\n\nBefore trying this sample, follow the Python 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 Python API\nreference documentation](/python/docs/reference/aiplatform/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 from google import genai\n from google.genai.types import HttpOptions, Part\n\n client = genai.Client(http_options=HttpOptions(api_version=\"v1\"))\n response = client.models.generate_content(\n model=\"gemini-2.5-flash\",\n contents=[\n \"What is shown in this image?\",\n Part.from_uri(\n file_uri=\"gs://cloud-samples-data/generative-ai/image/scones.jpg\",\n mime_type=\"image/jpeg\",\n ),\n ],\n )\n print(response.text)\n # Example response:\n # The image shows a flat lay of blueberry scones arranged on parchment paper. There are ...\n\nWhat's next\n\n\nTo search and filter code samples for other Google Cloud products, see the\n[Google Cloud sample browser](/docs/samples?product=googlegenaisdk)."]]