Versions (relevant - OpenSearch/Dashboard/Server OS/Browser):
AWS OpenSearch Serverless
(Codebase ran from my local mac)
Describe the issue:
This is my codebase,
from requests_aws4auth import AWS4Auth
import boto3
import requests
import os
from dotenv import load_dotenv
load_dotenv()
# AWS Credentials
service = 'aoss'
region = '<Region>'
credentials = boto3.Session().get_credentials()
awsauth = AWS4Auth(credentials.access_key, credentials.secret_key,
region, service, session_token=credentials.token)
# Collection Endpoint
host = "XXX"
### Create connector for Azure OpenAI embedding model ###
# Register repository - Creation of connector
connector_path = '_plugins/_ml/connectors/_create'
connector_url = host + connector_path
# Define the payload for Azure OpenAI Embedding model Connector
connector_name = "azure-openai-embedding-text-3-large"
connector_description = "Connector to Azure OpenAI Embedding API"
connector_version = "1"
protocol = "http"
payload = {
"name": connector_name,
"description": connector_description,
"version": connector_version,
"protocol": protocol,
"parameters": {
"endpoint": os.getenv("AZURE_OPENAI_ENDPOINT"),
"deploy-name": os.getenv("AZURE_OPENAI_EMBEDDING_DEPLOYMENT"),
"model": os.getenv("AZURE_OPENAI_EMBEDDING_MODEL"),
"api-version": os.getenv("AZURE_OPENAI_EMBEDDING_API_VERSION")
},
"credential": {
"secret_key": os.getenv("AZURE_OPENAI_API_KEY")
},
"actions": [
{
"action_type": "predict",
"method": "POST",
"url": "${parameters.endpoint}/openai/deployments/${parameters.deploy-name}/embeddings?api-version=${parameters.api-version}",
"headers": {
"api-key": "${credential.secret_key}"
},
"request_body": "{ \"input\": ${parameters.input}}",
"pre_process_function": "connector.pre_process.openai.embedding",
"post_process_function": "connector.post_process.openai.embedding"
}
]
}
headers = {"Content-Type": "application/json"}
r = requests.post(connector_url, auth=awsauth, json=payload, headers=headers)
print(r.status_code)
print(r.text)
Output
503
DNS resolution failure