Quick Start
This guide will help you get started with chemsource quickly.
Basic Usage
from chemsource import ChemSource
# Initialize ChemSource with your OpenAI API key
chem = ChemSource(model_api_key="your_openai_api_key")
# Retrieve information and classify a compound
info, classification = chem.chemsource("aspirin")
print(f"Source: {info[0]}")
print(f"Content: {info[1][:100]}...")
print(f"Classification: {classification}")
Configuration
You can configure chemsource with various parameters:
from chemsource import ChemSource
# Configure with custom settings
chem = ChemSource(
model_api_key="your_openai_api_key",
model="gpt-4o",
clean_output=True,
allowed_categories=["MEDICAL", "FOOD", "INDUSTRIAL", "PERSONAL CARE", "ENDOGENOUS", "INFO"]
)
Retrieving Information Only
If you only want to retrieve information without classification:
from chemsource import ChemSource
chem = ChemSource()
# Prioritize retrieval from Wikipedia (default)
source, content = chem.retrieve("caffeine")
# Prioritize PubMed for retrieval
source, content = chem.retrieve("caffeine", priority="PUBMED")
Classification Only
If you already have information about a compound:
from chemsource import ChemSource
chem = ChemSource(model_api_key="your_openai_api_key")
compound_info = "Aspirin is a medication used to reduce pain, fever, or inflammation."
classification = chem.classify("aspirin", compound_info)
print(classification)
Using Clean Output
For structured output with spell checking and validation:
from chemsource import ChemSource
chem = ChemSource(
model_api_key="your_openai_api_key",
clean_output=True,
allowed_categories=["MEDICAL", "FOOD", "INDUSTRIAL", "PERSONAL CARE", "ENDOGENOUS, INFO"]
)
info, classification = chem.chemsource("ibuprofen")
# classification will be a list of validated categories
print(classification) # ['MEDICAL']