本例子提供了分子搜索,支持上传 smi 文件,使用 RDKit 提取分子特征,并基于 Milvus 向量引擎进行后续检索。

分子搜索架构

引擎特性

分子背景介绍

SMILES(Simplified molecular input line entry system),简化分子线性输入规范,是一种用 ASCII 字符串明确描述分子结构的规范。由于 SMILES 用一串字符来描述一个三维化学结构,它必然要将化学结构转化成一个生成树,此系统采用纵向优先遍历树算法。转化时,先要去掉氢,还要把环打开。表示时,被拆掉的键端的原子要用数字标记,支链写在小括号里。

SMILES 字符串可以被大多数分子编辑软件导入并转换成二维图形或分子的三维模型。

分子特征提取

RDKit 是一个用于化学信息学的开源工具包,基于对化合物 2D 和 3D 分子操作,利用机器学习方法进行化合物描述符生成、fingerprint 生成、化合物结构相似性计算,2D 和 3D 分子展示等。将化学与机器学习联系起来的、非常实用的库。可以在很多种化学文件如 mol2、mol、Smiles、sdf 等之间互相转化,并能将其展示成 2D、3D 等形式供开发人员使用。

RDKit 分子结构

向量引擎索引策略

Milvus 索引策略

功能

数据上传
P(=O)(OC[C@H]1O[C@@H](n2c3ncnc(N)c3nc2)[C@H](O)[C@@H]1F)(O)O
搜索结果

帮助信息

Swagger 接口