Set up Vertex AI (Google Cloud)
Researched from Vertex AI (Google Cloud)'s official documentation on 2026-11-02. Not yet walked through end to end.
Your Cloud project and region: Set the project and region names below to match the model you can use. The package’s default region is not a promise of model availability.
- Current: Prepare your Cloud project
Choose a Cloud project, enable billing and the relevant model API, and arrange the permissions and regional quota your application needs.
- Not started: Create local Application Default Credentials
Install the Google Cloud CLI on your own machine, select your project, and run gcloud auth application-default login there. Follow Google’s sign-in instructions locally.
- Not started: Keep ADC local to your application
Run the application as the user who configured ADC. Do not download, paste or upload a service-account JSON for this walkthrough. The application reads local ADC itself; this website never opens it.
- Not started: Configure your .env
Use the environment names below in your own application. Keep its environment file out of source control. Never paste a key into this website.
- Not started: Run the local check
Choose a model you can use and run the matching example below on your own machine. Check any applicable usage charges first.
This provider is available in PHP Prism. The TypeScript and Python ports do not implement it.
Configure and verify locally
Environment names and defaults below come from the installed package. Choose a model you can use by setting PRISM_SETUP_MODEL on your machine. Run the verification only when you are ready for one billed request. No request is sent by this page.
Approximate text cost is input tokens × your model’s input rate, plus at most 32 output tokens × its output rate, divided by the rate’s token unit. Add any provider fees. Check your model and region’s current price; the token limit is not a money cap.
use Prism\Prism\Facades\Prism;
// Run in your own configured Laravel app (for example, php artisan tinker).
$model = getenv('PRISM_SETUP_MODEL');
if (!$model) {
throw new RuntimeException('Set PRISM_SETUP_MODEL to your model.');
}
try {
$result = Prism::text()
->using('vertex', $model)
->withPrompt('Say hello.')
->withMaxTokens(32)
->asText();
echo $result->text, PHP_EOL;
} catch (Throwable $error) {
echo get_class($error), PHP_EOL;
}