我正在尝试从混合搜索返回响应:
query = "scalable storage solution"
service_endpoint = os.environ["AZURE_SEARCH_SERVICE_ENDPOINT"]
index_name = os.environ["AZURE_SEARCH_INDEX_NAME"]
credential = DefaultAzureCredential()
search_client = SearchClient(endpoint=service_endpoint, index_name=index_name, credential=credential)
embedding = client.embeddings.create(input=query, model=embedding_model_name).data[0].embedding
vector = VectorizedQuery(vector=embedding, k_nearest_neighbors=3, fields="embedding")
results = search_client.search(query_type='semantic',
semantic_configuration_name='config124'
search_text=query,
vector_queries = [vector],
top=3)
for result in results:
print(f"Score: {result['@search.score']}")
但是我得到了错误:
/search/documents/_generated/operations/_documents_operations.py", line 756, in search_post
azure.core.exceptions.HttpResponseError: () Authorization failed.
Code:
Message: Authorization failed.
我还可以通过什么来确保其授权?
对于向量,“字段”的值是多少?
结果:
credential = DefaultAzureCredential()
取决于它的运行位置。
例如,如果它在 Azure 应用服务中运行:
您也可以使用 api 密钥进行连接https://learn.microsoft.com/en-us/azure/search/search-security-api-keys?tabs=portal-use%2Cportal-find%2Cportal-query