网站•文档•挑战和解决方案•用例
Embedding Studio是一个创新的开源框架,旨在无缝将组合的嵌入模型和矢量数据库转换为全面的搜索引擎。通过内置功能,可用于ClickStream集合,持续改进搜索体验以及自动改编嵌入模型,它为全周期搜索引擎提供了开箱即用的解决方案。
| 社区支持 |
| 嵌入工作室随着我们团队的热情而增长。您在存储库上的明星有助于我们继续发展。 加入我们实现我们的目标: |
(*) - 开发中的功能
嵌入工作室是可以自定义的,因此您可以自定义:
在这里有更多关于它的信息。
免责声明:嵌入工作室并不是另一个矢量数据库,它是一个框架,可以将矢量数据库转换为具有所有细微差别的搜索引擎。
有关挑战和解决方案的更多信息
我们的框架使您能够根据用户体验不断地微调模型,从而使您更快,更准确地形成搜索结果。

查看我们的正式文档。
要尝试嵌入工作室,您可以启动预先配置的演示项目。我们已经准备了一个存储在公共S3存储桶中的数据集,用户点击的模拟器以及用于微调模型的基本脚本。通过将其调整为您的要求,您可以为模型启动微调。
确保您在系统上使用docker compose version命令:
Docker Compose version v2.23.3您也可以尝试Docker-Compose版本命令。向前迈进,我们将使用较新的Docker Compose版本命令,但是Docker-Compose版本命令也可以在您的系统上成功使用。
首先,通过执行以下命令来提出所有嵌入工作室服务:
docker compose up -d一旦所有服务启动,您就可以开始使用Embedding Studio。让我们模拟用户搜索会话。我们将运行一个预构建的脚本,该脚本将调用嵌入式工作室API并效仿用户行为:
docker compose --profile demo_stage_clickstream up -d脚本执行后,您可以启动模型进行微调。执行以下命令:
docker compose --profile demo_stage_finetuning up -d这将排队由微调工人处理的任务。要在微调队列中获取所有任务,请将GET请求发送到端点/api/v1/fine-tuning/task :
curl -X GET http://localhost:5000/api/v1/fine-tuning/task答案将是:
[
{
"fine_tuning_method" : " Default Fine Tuning Method " ,
"status" : " processing " ,
"created_at" : " 2023-12-21T14:30:25.823000 " ,
"updated_at" : " 2023-12-21T14:32:16.673000 " ,
"batch_id" : " 65844a671089823652b83d43 " ,
"id" : " 65844c019fa7cf0957d04758 "
}
]拥有任务ID后,您可以通过将get请求发送到端点/api/v1/fine-tuning/task/{task_id} :
curl -X GET http://localhost:5000/api/v1/fine-tuning/task/65844c019fa7cf0957d04758结果将类似于查询所有任务时收到的内容。对于更方便的跟踪进度方法,您可以在http:// localhost:5001使用MLFLOW。
检查fine_tuning_worker的日志以确保一切正常运行,这也是有益的。为此,请使用命令列出所有服务:
docker logs embedding_studio-fine_tuning_worker-1如果一切成功完成,您会看到类似的日志:
Epoch 2: 100% | ██████████ | 13/13 [01: 17< 00:00, 0.17it/s, v_num = 8]
[2023-12-21 14:59:05,931] [PID 7] [Thread-6] [pytorch_lightning.utilities.rank_zero] [INFO] ` Trainer.fit ` stopped: ` max_epochs=3 ` reached.
Epoch 2: 100% | ██████████ | 13/13 [01: 17< 00:00, 0.17it/s, v_num = 8]
[2023-12-21 14:59:05,975] [PID 7] [Thread-6] [embedding_studio.workers.fine_tuning.finetune_embedding_one_param] [INFO] Save model (best only, current quality: 8.426392069685529e-05)
[2023-12-21 14:59:05,975] [PID 7] [Thread-6] [embedding_studio.workers.fine_tuning.experiments.experiments_tracker] [INFO] Save model for 2 / 9a9509bf1ed7407fb61f8d623035278e
[2023-12-21 14:59:06,009] [PID 7] [Thread-6] [embedding_studio.workers.fine_tuning.experiments.experiments_tracker] [WARNING] No finished experiments found with model uploaded, except initial
[2023-12-21 14:59:16,432] [PID 7] [Thread-6] [embedding_studio.workers.fine_tuning.experiments.experiments_tracker] [INFO] Upload is finished
[2023-12-21 14:59:16,433] [PID 7] [Thread-6] [embedding_studio.workers.fine_tuning.finetune_embedding_one_param] [INFO] Saving is finished
[2023-12-21 14:59:16,433] [PID 7] [Thread-6] [embedding_studio.workers.fine_tuning.experiments.experiments_tracker] [INFO] Finish current run 2 / 9a9509bf1ed7407fb61f8d623035278e
[2023-12-21 14:59:16,445] [PID 7] [Thread-6] [embedding_studio.workers.fine_tuning.experiments.experiments_tracker] [INFO] Current run is finished
[2023-12-21 14:59:16,656] [PID 7] [Thread-6] [embedding_studio.workers.fine_tuning.experiments.experiments_tracker] [INFO] Finish current iteration 2
[2023-12-21 14:59:16,673] [PID 7] [Thread-6] [embedding_studio.workers.fine_tuning.experiments.experiments_tracker] [INFO] Current iteration is finished
[2023-12-21 14:59:16,673] [PID 7] [Thread-6] [embedding_studio.workers.fine_tuning.worker] [INFO] Fine tuning of the embedding model was completed successfully !恭喜!您已经成功改进了模型!
要下载最佳型号,您可以使用Embedding Studio API:
curl -X GET http://localhost:5000/api/v1/fine-tuning/task/65844c019fa7cf0957d04758如果一切正常,您将看到以下输出:
{
"fine_tuning_method" : " Default Fine Tuning Method " ,
"status" : " done " ,
"best_model_url" : " http://localhost:5001/get-artifact?path=model%2Fdata%2Fmodel.pth&run_uuid=571304f0c330448aa8cbce831944cfdd " ,
...
}和best_model_url字段包含HTTP访问model.pth 。
您可以通过执行以下命令下载 *.pth文件:
wget http://localhost:5001/get-artifact ? path=model%2Fdata%2Fmodel.pth & run_uuid=571304f0c330448aa8cbce831944cfdd我们欢迎嵌入工作室的贡献!
嵌入Studio已获得Apache许可证版本2.0的许可。有关完整许可文本,请参见许可证。