本頁說明如何建立及管理 Google Distributed Cloud 連結網路方案 API 端點上的 Gemini。
必要條件
本節說明部署 Gemini 前必須完成的一次性步驟,才能在 GDC 連線 API 端點上部署 Gemini。請在啟動機器上完成這些步驟。
您必須使用具備 Edge Container Zone Viewer 角色的 IT 管理員帳戶,完成本節中的步驟。完成本節中的步驟後,請將收集到的資訊 (包括 CA 憑證和 DNS 伺服器 IP 位址) 提供給 Google Cloud 專案管理員,由對方按照「部署 Gemini on GDC 連線 API 端點」一文的說明部署端點。
完成硬體啟動
完成本頁的步驟前,請務必先:
按照「安裝需求」一文的說明,成功部署 Google 認證硬體。
與 Google 代表合作,建立必要的 Distributed Cloud 連線叢集。
授予必要角色
您必須設定下列必要角色:
如要管理 Gemini on GDC 連線 API 部署作業,請為相關帳戶授予「Distributed Cloud Edge Container API 角色和權限」中列出的角色。
如要透過 GDC 連線 API 端點與 Gemini 互動,請為帳戶授予「Vertex AI API 角色和權限」一文列出的角色。
取得目標 Distributed Cloud connected 可用區的相關資訊
如要取得目標 Distributed Cloud connected 可用區的名稱,請按照下列步驟操作:
取得目標 Google Cloud 機構 ID 的名稱:
gcloud organizations list
列出 Google Cloud 機構中的 Distributed Cloud connected 可用區:
gcloud alpha edge-cloud zones list \ --organization ORGANIZATION_ID \ --location REGION
更改下列內容:
ORGANIZATION_ID:目標 Google Cloud 機構的 ID。REGION:目標 Distributed Cloud connected 區域的建立 Google Cloud 區域。在公開預先發布期間,系統僅支援us-west2區域。
取得目標可用區的詳細資訊:
gcloud alpha edge-cloud zones describe ZONE \ --organization ORGANIZATION_ID \ --location REGION
更改下列內容:
ZONE:目標 Distributed Cloud 連結網路區域。ORGANIZATION_ID:目標 Google Cloud 機構的 ID。REGION:目標 Distributed Cloud connected 區域的建立 Google Cloud 區域。在公開預先發布期間,系統僅支援us-west2區域。
取得 Distributed Cloud connected 可用區中通過認證的機器相關資訊
如要取得 Distributed Cloud connected 可用區中目標認證機器的名稱,請按照下列步驟操作:
如「列出可用區中的機器」一文所述,列出目標 Distributed Cloud connected 可用區中的 Distributed Cloud connected 機器。
如要取得目標機器的詳細資訊,請參閱「取得機器的相關資訊」。
啟用本機 AI Platform API 和 Vertex AI API 服務
請使用具備「Edge Container Zonal Project Admin」角色的 IT 管理員帳戶,完成本節中的步驟。
在目標 Distributed Cloud 連線區域中啟用目標 Google Cloud 專案:
gcloud alpha edge-cloud projects enable PROJECT_ID \ --organization ORGANIZATION_ID \ --location REGION \ --zone ZONE
更改下列內容:
PROJECT_ID:目標 Google Cloud 專案的 ID。ORGANIZATION_ID:目標 Google Cloud 機構的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。ZONE:目標 Distributed Cloud 連結網路區域。
在目標 Google Cloud 專案中啟用 AI Platform 服務:
gcloud services enable aiplatform.googleapis.com --project PROJECT_ID
將
PROJECT_ID替換為目標 Google Cloud 專案的 ID。在 Distributed Cloud 連結區域啟用 Vertex AI API 服務:
gcloud alpha edge-cloud services enable aiplatform.googleapis.com --project PROJECT_ID \ --location REGION \ --zone ZONE
更改下列內容:
PROJECT_ID:目標 Google Cloud 專案的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。ZONE:目標 Distributed Cloud 連結網路區域。
設定端點以進行 DNS 解析
取得目標 Distributed Cloud 連線區域的代管 DNS 位址、頂層網域 (TLD) 和憑證授權單位 (CA) 憑證。
gcloud alpha edge-cloud zones describe ZONE \ --organization ORGANIZATION_ID \ --location REGION \ --format="value(certificateAuthorities)" \ > CA_CERTIFICATE_FILE
更改下列內容:
ORGANIZATION_ID:目標 Google Cloud 機構的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。ZONE:目標 Distributed Cloud 連結網路區域。CA_CERTIFICATE_FILE:這個檔案會儲存指令輸出的憑證酬載。您稍後會使用這個檔案產生服務帳戶金鑰。
檔案中會儲存類似下列內容的輸出內容:
-----BEGIN CERTIFICATE----- MIIDATCCAemgAwIBAgIRAOsIG15loHwPBpjQe9FZYUAwDQYJKoZIhvcNAQELBQAw GjEYMBYGA1UEAxMPZ2RjZS1jbHVzdGVyLWNhMB4XDTI1MDcyOTEyMTAwNloXDTQ5 MDcyMzEyMTAwNlowGjEYMBYGA1UEAxMPZ2RjZS1jbHVzdGVyLWNhMIIBIjANBgkq hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3YdoASubyzHdgZ0vIU5g1dxdFRT1T4wc o9FaRXftSTDfiNVNKj/vC+De9EZokpyLZkdZNep6p0TLJAsPZYq+yiTCiaJ6Ihwy 3LBn8j2PessSIte2LUhkft1yCQqfkgpYfKcjM3IauIXETS961m0uJb4sntgLJ4nM Scb5vpW1f70D1V27bqnEsE7+rbxzeFTosHC+DGBcLqIE0ptdionm/4xoltH7yv2O qKfcc/46TyPwGRzxifEdNzjKZ1kRdTThESfW+L7TQNv6VF5TC4FPksYX/ID/X7Fz G9BRey0mikvc4J7qQIeyMRlpIKqRh/1FCdRDC9vVEQipT2Ls0MwwTwIDAQABo0Iw QDAOBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUmES2 pyMLOnnsKug8amFmenOaTr8wDQYJKoZIhvcNAQELBQADggEBADn71zo7cNFZ0kQE C2lS6b0DLz4Nd1yCz5fGDvxzcTRdOT60wyq/TAx1YlYse33cGk/cQ7RkVsM56UX1 T8RMvi09UcEQG3wFrYuU62ZjXF1a3RrOnHxyvVdyvbUYAO5gvzBQrj4tMZYX9kL3 6H/9FwXuHVyqWAm0xpWvZfszwJjY4C1VxoDwmRiZPYzTrWI6/rY0QmORgcZXLnPL OVufbAX30aRGdTRnVXxE0fKmXwzbtbSHilU5hJT7EQWMvV5hJfyNqdXG0gbrhrsk sB0yRjk5PHQd9pOMcXcYIgfNnUEcQl4qeSll3g5cZ+cRrcTO1USFLRo8dcbQpJ6Y 6ykzvKs= -----END CERTIFICATE----- createTime: '2025-08-25T20:46:50.269384028Z' dnsServers: - ipAddress: DNS_SERVER_ADDRESS tld: TOP_LEVEL_DOMAIN name: organizations/ORGANIZATION_ID/locations/REGION/zones/ZONE state: STATE_RUNNING
使用上一步驟取得的 DNS 伺服器 IP 位址和頂層網域 (TLD) 名稱,為端點建立 DNS 設定,如下所示。您必須從與 Gemini on GDC connected API 認證機器位於相同本機網路的機器執行這項指令。
mkdir /etc/systemd/resolved.conf.d echo '[Resolve] DNS=DNS_SERVER_ADDRESS Domains=~TOP_LEVEL_DOMAIN' > /etc/systemd/resolved.conf.d/dns.conf sudo systemctl restart systemd-resolved
更改下列內容:
DNS_SERVER_ADDRESS:DNS 伺服器的 IP 位址。TOP_LEVEL_DOMAIN:端點的頂層網域。
部署 Gemini on GDC connected API 端點
如要部署 Gemini on GDC connected API 端點,請使用 Google Cloud 專案 管理員帳戶執行下列操作:
建立端點:
gcloud beta ai endpoints create \ --project=PROJECT_ID \ --region=REGION \ --gdc-zone=ZONE \ --display-name=ENDPOINT_NAME \ --endpoint-id=ENDPOINT_ID
更改下列內容:
PROJECT_ID:目標 Google Cloud 專案的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。ZONE:目標 Distributed Cloud 連結網路區域。ENDPOINT_NAME:這個端點的名稱。ENDPOINT_ID:(選用) 這個端點的專屬 ID。如果省略,系統會產生隨機 ID。
部署模型:
gcloud beta ai endpoints deploy-model ENDPOINT_ID \ --display-name=ENDPOINT_NAME \ --model=MODEL_PUBLIC_ID \ --region=REGION
更改下列內容:
ENDPOINT_ID:目標端點的 ID。ENDPOINT_NAME:目標端點的名稱。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。MODEL_PUBLIC_ID:模型對外公開的 ID。如需支援的模型清單,請參閱「支援的模型」。
列出已部署的端點:
gcloud beta ai endpoints list \ --project=PROJECT_ID \ --region=REGION
更改下列內容:
PROJECT_ID:目標 Google Cloud 專案的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。
記下目標端點的 ID。
取得端點位址:
gcloud beta ai endpoints describe ENDPOINT_ID \ --project=PROJECT_ID \ --region=REGION
更改下列內容:
ENDPOINT_ID:目標端點的 ID。PROJECT_ID:目標 Google Cloud 專案的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。
在目標 Distributed Cloud 連線區域中,為端點建立服務帳戶:
gcloud alpha edge-cloud service-accounts create SERVICE_ACCOUNT \ --project PROJECT_ID \ --location REGION \ --zone ZONE
更改下列內容:
SERVICE_ACCOUNT:有意義的名稱,可做為這個服務帳戶的專屬 ID。這個名稱只能包含小寫英文字母、數字、「-」或「.」,且開頭和結尾須為英數字元。不得使用大寫英文字母。PROJECT_ID:目標 Google Cloud 專案的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。ZONE:目標 Distributed Cloud 連結網路區域。
取得目標 Distributed Cloud 連線區域的身分與存取權管理政策:
gcloud alpha edge-cloud zones get-iam-policy ZONE \ --project PROJECT_ID \ --location REGION
更改下列內容:
ZONE:目標 Distributed Cloud 連結網路區域。PROJECT_ID:目標 Google Cloud 專案的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。
將 AI Platform 開發人員角色指派給服務帳戶:
gcloud alpha edge-cloud zones set-iam-policy POLICY_FILE \ --project PROJECT_ID \ --location REGION \ --zone ZONE
更改下列內容:
POLICY_FILE:包含角色指派政策的 JSON 或 YAML 檔案。PROJECT_ID:目標 Google Cloud 專案的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。ZONE:目標 Distributed Cloud 連結網路區域。
以下是 JSON 格式的政策範例:
{ "bindings": [ { "role": "roles/aiplatform.geminiDeveloper", "members": [ { "serviceAccount": "projects/PROJECT_ID/locations/REGION/serviceAccounts/SERVICE_ACCOUNT" } ] } ], "etag": "" }以下是 YAML 格式的政策範例:
bindings: - role: roles/aiplatform.geminiDeveloper members: - serviceAccount: projects/PROJECT_ID/locations/REGION/serviceAccounts/SERVICE_ACCOUNT etag: ""
更改下列內容:
PROJECT_ID:目標 Google Cloud 專案的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。SERVICE_ACCOUNT:可明確識別這個服務帳戶的有意義名稱。
使用下節所述的其中一種方法設定驗證。
使用不記名權杖設定驗證
完成本節中的步驟,設定端點驗證以使用不記名權杖。
產生服務帳戶金鑰:
gcloud alpha edge-cloud service-accounts keys create SA_KEY_FILE \ --service-account SERVICE_ACCOUNT \ --project PROJECT_ID \ --location REGION \ --ca-cert-path CA_CERTIFICATE_FILE
更改下列內容:
SA_KEY_FILE:用於儲存產生的服務帳戶金鑰的檔案。SERVICE_ACCOUNT:您在本指南稍早建立的服務帳戶。PROJECT_ID:目標 Google Cloud 專案的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。CA_CERTIFICATE_FILE:您先前建立的 CA 憑證檔案。
取得端點的完整網址:
gcloud beta ai endpoints describe ENDPOINT_ID \ --project=PROJECT_ID \ --region=REGION
更改下列內容:
ENDPOINT_ID:目標端點 ID。PROJECT_ID:目標 Google Cloud 專案的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。
列印服務帳戶的身分識別權杖。您必須從與 Gemini on GDC connected API 認證機器位於相同本機網路的機器執行此指令。
gcloud alpha edge-cloud auth print-identity-token \ --cred-file=SA_KEY_FILE \ --audience=ENDPOINT_URL
更改下列內容:
SA_KEY_FILE:先前建立的服務帳戶金鑰檔案。ENDPOINT_URL:端點的完整網址,包括頂層網域尾碼。
使用 API 金鑰設定驗證
完成本節中的步驟,設定端點驗證以使用 API 金鑰。
產生 API 金鑰:
gcloud alpha edge-cloud api-keys create API_KEY_ID \ --service-account SERVICE_ACCOUNT \ --project PROJECT_ID \ --location REGION \ --zone ZONE
更改下列內容:
API_KEY_ID:這個 API 金鑰的專屬 ID。SERVICE_ACCOUNT:您在本指南稍早建立的服務帳戶。PROJECT_ID:目標 Google Cloud 專案的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。ZONE:目標 Distributed Cloud 連結網路區域。
擷取 API 金鑰酬載:
gcloud alpha edge-cloud api-keys describe API_KEY_ID \ --project=PROJECT_ID \ --location=REGION
更改下列內容:
API_KEY_ID:您在上一個步驟中設定的 API 金鑰 ID。SERVICE_ACCOUNT:用於產生 API 金鑰的服務帳戶。PROJECT_ID:目標 Google Cloud 專案的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。
列出已部署的 Gemini on GDC connected API 端點
如要列出已部署的 Gemini on GDC connected API 端點,請按照下列步驟操作:
gcloud beta ai endpoints list \
--project=PROJECT_ID \
--region=REGION \
--gdc-zone=ZONE
更改下列內容:
PROJECT_ID:目標 Google Cloud 專案的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。ZONE:目標 Distributed Cloud 連結網路區域。
取得 Gemini on GDC connected API 端點的相關資訊
如要取得已部署的 Gemini on GDC connected API 端點相關資訊,請按照下列步驟操作:
gcloud beta ai endpoints describe ENDPOINT_ID \
--project=PROJECT_ID \
--region=REGION
更改下列內容:
ENDPOINT_ID:目標端點的 ID。PROJECT_ID:目標 Google Cloud 專案的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。
與 Google Distributed Cloud 連結網路方案上的 Gemini API 端點互動
Gemini on GDC connected API 端點支援透過 ChatCompletions API 和 ListAvailableModels API 互動。您可以使用這些 API 以程式輔助方式與端點互動。
以下是透過 ChatCompletions API 發出的要求範例。這項要求產生的不記名權杖有效期限為 12 小時。
在殼層環境中設定下列變數:
MODEL_PROMPT_ID="MODEL_PROMPT_ID" USER_CONTENT="Who invented the light bulb?" PROJECT="PROJECT_ID" LOCATION="REGION" IG_FQDN="inference-gateway.vai.ZONE.google.private.goog" CRED_FILE="SA_KEY_FILE" API_ENDPOINT="https://${IG_FQDN}/v1/projects/${PROJECT}/locations/${LOCATION}/chat/completions"更改下列內容:
MODEL_NAME:目標模型的名稱。PROJECT_ID:目標 Google Cloud 專案的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。SA_KEY_FILE:先前建立的服務帳戶金鑰檔案。
建構酬載:
REQUEST_BODY=$(cat <<EOF { "model": "${MODEL_PROMPT_ID}", "messages": [ { "role": "system", "content": "Pizza for everyone!" }, { "role": "user", "content": "${USER_CONTENT}" } ], "stream": false } EOF )使用下列其中一種方法向端點進行驗證:
- 列印不記名權杖。您必須從與 Gemini on GDC connected API 認證機器位於相同本機網路的機器執行此指令:
BEARER_TOKEN=$(gcloud alpha edge-cloud auth print-identity-token --cred-file="${CRED_FILE}" --audience="https://${IG_FQDN}") echo $BEARER_TOKEN- 列印 API 金鑰。您可以從與 Gemini on GDC connected API 認證機器不在同一本機網路的機器,遠端執行這項指令:
API_KEY=$(gcloud alpha edge-cloud api-keys describe "${API_KEY_ID}" --project "${PROJECT}" --location "${LOCATION}" --format="value(key)") echo $API_KEY使用下列任一方法,將要求傳送至端點。
- 傳送要求,並使用不記名權杖進行驗證。您必須從與 Gemini on GDC connected API 認證機器位於相同本機網路的機器執行此指令:
curl -k -X POST \ "${API_ENDPOINT}" \ -d "${REQUEST_BODY}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer ${BEARER_TOKEN}" \ -H "x-goog-user-project: projects/${PROJECT}"- 傳送要求,並使用 API 金鑰進行驗證。您可以從與 Gemini on GDC connected API 認證機器不在同一本機網路的電腦,遠端執行這項指令:
curl -k -X POST \ "${API_ENDPOINT}" \ -d "${REQUEST_BODY}" \ -H "Content-Type: application/json" \ -H "x-goog-api-key: ${API_KEY}"
多模態 ChatCompletions API 要求範例,酬載為 JPEG 圖片
以下是多模態 ChatCompletions API 要求酬載的範例,其中以 JPEG 圖片做為輸入內容:
建構酬載:
BASE64_IMAGE=$(base64 -w 0 JPEG_FILE) REQUEST_BODY=$(cat <<EOF { "model": "${MODEL_PROMPT_ID}", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "What is this image?" }, { "type": "image_url", "image_url": { "url": "data:image/jpeg;base64,${BASE64_IMAGE}" } } ] } ] } EOF )將要求傳送至端點。您必須從與 Gemini on GDC connected API 認證機器位於相同本機網路的機器執行這項指令。
curl -k -X POST \ "${API_ENDPOINT}" \ -d "${REQUEST_BODY}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer ${BEARER_TOKEN}" \ -H "x-goog-user-project: projects/${PROJECT}"
多模態 ChatCompletions API 要求範例,包含 PDF 文件酬載
以下是多模態 ChatCompletions API 要求酬載的範例,其中 PDF 文件是輸入內容:
建構酬載:
BASE64_PDF=$(base64 -w 0 PDF_FILE) REQUEST_BODY=$(cat <<EOF { "model": "${MODEL_PROMPT_ID}", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Please summarize this document." }, { "type": "input_document", "input_document": { "data": "data:application/pdf;base64,${BASE64_PDF}", "format": "pdf" } } ] } ] } EOF )將要求傳送至端點。您必須從與 Gemini on GDC connected API 認證機器位於相同本機網路的機器執行這項指令。
curl -k -X POST \ "${API_ENDPOINT}" \ -d "${REQUEST_BODY}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer ${BEARER_TOKEN}" \ -H "x-goog-user-project: projects/${PROJECT}"
多模態 ChatCompletions API 要求範例 (含音訊酬載)
以下是多模態 ChatCompletions API 要求酬載的範例,其中包含輸入的音訊檔案:
建構酬載:
BASE64_AUDIO=$(base64 -w 0 AUDIO_FILE) REQUEST_BODY=$(cat <<EOF { "model": "${MODEL_PROMPT_ID}", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Transcribe this speech for me." }, { "type": "input_audio", "input_audio": { "data": "data:audio/mp3;base64,${BASE64_AUDIO}", "format": "mp3" } } ] } ] } EOF )將要求傳送至端點。您必須從與 Gemini on GDC connected API 認證機器位於相同本機網路的機器執行這項指令。
curl -k -X POST \ "${API_ENDPOINT}" \ -d "${REQUEST_BODY}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer ${BEARER_TOKEN}" \ -H "x-goog-user-project: projects/${PROJECT}"
多模態 ChatCompletions API 要求範例 (含影片酬載)
以下是多模態 ChatCompletions API 要求酬載的範例,其中包含輸入的影片檔案:
建構酬載:
BASE64_VIDEO=$(base64 -w 0 VIDEO_FILE) REQUEST_BODY=$(cat <<EOF { "model": "${MODEL_PROMPT_ID}", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Could you summarize this video for me?" }, { "type": "input_video", "input_video": { "data": "data:video/wmv;base64,${BASE64_VIDEO}", "format": "wmv" } } ] } ] } EOF )將要求傳送至端點。您必須從與 Gemini on GDC connected API 認證機器位於相同本機網路的機器執行這項指令。
curl -k -X POST \ "${API_ENDPOINT}" \ -d "${REQUEST_BODY}" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer ${BEARER_TOKEN}" \ -H "x-goog-user-project: projects/${PROJECT}"
ListAvailableModels API 要求範例
以下是 ListAvailableModels API 要求的範例:
BEARER_TOKEN=$(gcloud alpha edge-cloud auth print-identity-token --cred-file="${CRED_FILE}" --audience="https://${IG_FQDN}")
# The request body -d parameter is intentionally omitted.
grpcurl -insecure \
-H "Authorization: Bearer ${BEARER_TOKEN}" \
-H "x-goog-user-project: projects/${PROJECT}" \
"${IG_FQDN}" \
cloud.gdc.ai.inference.inferencegateway.GeminiMetadataService.ListAvailableModels
刪除 Gemini on Google Distributed Cloud 連結網路方案 API 端點
如要刪除 Gemini on GDC connected API 端點,請按照下列步驟操作:
取消部署模型:
gcloud beta ai endpoints undeploy-model ENDPOINT_ID \ --region=REGION \ --deployed-model-id=DEPLOYED_MODEL_ID
更改下列內容:
ENDPOINT_ID:目標端點的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。DEPLOYED_MODEL_ID:已部署模型的 ID。
刪除端點:
gcloud beta ai endpoints delete ENDPOINT_ID \ --project=PROJECT_ID \ --region=REGION
更改下列內容:
ENDPOINT_ID:目標端點的 ID。PROJECT_ID:目標 Google Cloud 專案的 ID。REGION:已建立目標 Distributed Cloud connected 區域的 Google Cloud 區域。
排解端點問題
如果 Gemini on GDC connected API 端點發生故障,請與 Google 代表聯絡,以進行疑難排解。