main
1# frozen_string_literal: true
2
3Elelem::Providers.register(:vertex) do
4 model = ENV.fetch("VERTEX_MODEL", "claude-opus-4-5@20251101")
5 project = ENV.fetch("GOOGLE_CLOUD_PROJECT")
6 region = ENV.fetch("GOOGLE_CLOUD_REGION", "us-east5")
7 Elelem::Net::Claude.new(
8 endpoint: "https://#{region}-aiplatform.googleapis.com/v1/projects/#{project}/locations/#{region}/publishers/anthropic/models/#{model}:rawPredict",
9 headers: -> { { "Authorization" => "Bearer #{`gcloud auth application-default print-access-token`.strip}" } },
10 model: model,
11 version: "vertex-2023-10-16",
12 )
13end