返回 Skill 列表
extension
分类: 效率与办公无需 API Key

ChemVision 化学查询服务

Use this skill when the user asks about chemistry — chemical names, molecular structures (SMILES), molecular formulas, molecular weights, safety information (GHS hazards), or chemical reaction predictions. Supports Chinese and English chemical names, IUPAC names, and common names. Calls PubChem and OPSIN real chemistry databases to reduce LLM hallucinations. Returns molecular structure images and chemical equation renderings.

person作者: mcshengxiahubModelScope

ChemVision AI 化学家

化学数据查询服务 — PubChem + OPSIN 真实数据库,分子结构图 + 化学方程式渲染。

When to Use

  • Chemical compound queries (name → structure, SMILES → info)
  • Safety / GHS hazard information
  • Chemical reaction prediction (Agent answers, tools provide data)
  • Molecular structure image rendering

Step 0: Ensure Service Is Running

cd {this_skill_dir} && python manage.py status

If not running: python manage.py start To stop: python manage.py stop

Step 1: Call Tools

POST to http://localhost:8899/api/tools/call.

name_to_structure

curl -s -X POST http://localhost:8899/api/tools/call \
  -H "Content-Type: application/json" \
  -d '{"tool_name":"name_to_structure","arguments":{"name":"苯甲酸"}}'

Returns SMILES, formula, weight, svg_url.

Important: Tools only accept English names. If the user asks in Chinese, Agent must translate to English first, then call the tool. Example: "苯甲酸" → "benzoic acid".

inspect_smiles

curl -s -X POST http://localhost:8899/api/tools/call \
  -H "Content-Type: application/json" \
  -d '{"tool_name":"inspect_smiles","arguments":{"smiles":"CCO"}}'

safety_info

curl -s -X POST http://localhost:8899/api/tools/call \
  -H "Content-Type: application/json" \
  -d '{"tool_name":"safety_info","arguments":{"query":"benzene"}}'

predict_reaction

Queries chemical data for reactants. Agent should answer the reaction itself.

curl -s -X POST http://localhost:8899/api/tools/call \
  -H "Content-Type: application/json" \
  -d '{"tool_name":"predict_reaction","arguments":{"reactants":"acetic acid + ethanol"}}'

Step 2: Show Results

Molecular structure

  1. Open svg_url from tool result in browser
  2. Screenshot → save file
  3. Send to user: send_file_to_user(file_path="xxx.png", caption="分子结构图")

Chemical equation

After answering a reaction, render the equation:

  1. Open in browser: http://localhost:8899/api/formula/{equation}
  2. Screenshot → save file
  3. Send to user: send_file_to_user(file_path="xxx.png", caption="化学方程式")

Equation format rules:

  • Subscripts automatic: H2O, CH3COOH, Ca(OH)2
  • Superscripts: Fe^{2+}, SO4^{2-}
  • Arrows: -> (one way), <=> (equilibrium)
  • Conditions: [加热], [催化剂] (shown above/below arrow)
  • Example: CH3COOH+C2H5OH<=>[浓硫酸][加热]CH3COOC2H5+H2O

Fallback

If predict_reaction fails, the Agent answers directly using its own chemistry knowledge, then renders the equation via /api/formula/.

Notes

  • Pure data tools — NO LLM dependency, ALL reasoning by Agent
  • All data from PubChem/OPSIN real databases
  • Local only — chemistry data never leaves the machine
  • Swagger UI: http://localhost:8899/docs