如何通过Postman或Curl在Weaviate Cloud创建新集合?
解决Weaviate Cloud创建集合的正确方法
你遇到的错误是因为Weaviate Cloud的GraphQL接口不支持Schema变更操作(比如创建类/集合),这类操作必须通过REST API完成。以下是Postman中的具体配置步骤:
一、REST API创建集合(推荐)
1. 基础请求配置
- 请求方法:
POST - 请求URL:
https://<你的WCD实例ID>.weaviate.network/v1/schema替换
<你的WCD实例ID>为你的Weaviate Cloud实例域名(比如my-cluster-xyz.weaviate.network) - 请求头:
Authorization:Bearer <你的WCD API密钥>Content-Type:application/json- (可选)
X-OpenAI-Api-Key: 若你的实例使用OpenAI作为向量嵌入器,需添加此头并填入OpenAI密钥
2. 请求体(JSON格式)
将以下内容填入Postman的"Body"标签,选择"raw"并设置为JSON格式:
{ "class": "Items", "properties": [ { "name": "entity_type", "dataType": ["text"] }, { "name": "description", "dataType": ["text"] }, { "name": "item_id", "dataType": ["number"] } ] }
3. 验证创建结果
发送请求后,若返回200 OK,表示集合创建成功。你可以通过以下方式验证:
- 发送
GET请求到https://<你的WCD实例ID>.weaviate.network/v1/schema,返回的JSON会包含Items类的完整定义 - 再次执行你原有的GraphQL查询,将不再出现Schema相关错误
二、为什么GraphQL的addClass会失败?
Weaviate的设计中,GraphQL接口专注于数据读写操作(查询、插入、更新数据),而**Schema管理(创建/删除类、修改属性)**是REST API的专属功能,无论本地实例还是云实例都遵循这个规则,因此你之前的GraphQL mutation必然会报错。
内容的提问来源于stack exchange,提问作者Jadam
相关产品推荐
相关产品推荐

