Agents
Project description
SciAgents
SciAgents is an extensible multi-agent framework designed for scientific research scenarios. It leverages large language models (LLMs) to automate research tasks and can be integrated with robotic systems for advanced scientific workflows.
Features
- Supports various LLM providers (OpenAI, Azure, Gemini, etc.)
- Modular agent and tool system for easy extension
- Flexible configuration for different research needs
- Ready-to-use test scripts and Jupyter notebooks
- Can be combined with robots for automated scientific experiments
Installation
pip install sciagents
Quick Start
Below is a minimal example of using ChatAgent in your project.
Note: Make sure you have a valid config/config.yml with your LLM API keys and model info.
import os
from sciagents.agents.chat_agent import ChatAgent
from sciagents.agents.message import AgentInput, Message, Role
import yaml
# Load config
config_path = os.path.join("config", "config.yml")
with open(config_path, "r", encoding="utf-8") as f:
config = yaml.safe_load(f)
chat_agent_config = config["agents"]["ChatAgent"]
# Build agent input
messages = [Message(role=Role.USER, content="Introduce yourself, please.")]
agent_input = AgentInput(messages=messages)
# Create ChatAgent instance
agent = ChatAgent(
name="DemoChatAgent",
llm_config={
"model": chat_agent_config["model"],
"api_key": chat_agent_config["api_key"],
"api_base": chat_agent_config["url"],
**chat_agent_config.get("model_config_dict", {})
},
stream=True
)
# Get response
output = agent.step(agent_input)
if hasattr(output.content, "__iter__") and not isinstance(output.content, str):
for chunk in output.content:
print(chunk, end="", flush=True)
print()
else:
print(output.content)
Project Structure
sciagents/: Core code (agents, tools, LLM interfaces)config/: Configuration filestest/: Test scripts and examples
License
This project is licensed under the MIT License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sciagents-0.0.1.tar.gz.
File metadata
- Download URL: sciagents-0.0.1.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5132e88ac0ff4ce324213789c388a750c15a668cccb8622d1cb6885bdfa354fb
|
|
| MD5 |
fcc1ceff51a5b037a20bc31141a65ae1
|
|
| BLAKE2b-256 |
3a141871ce328f637dae5c807d3cc6ecb48e40415e3f44f18da5d43cd30b7705
|
Provenance
The following attestation bundles were made for sciagents-0.0.1.tar.gz:
Publisher:
publish.yml on openags/SciAgents
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sciagents-0.0.1.tar.gz -
Subject digest:
5132e88ac0ff4ce324213789c388a750c15a668cccb8622d1cb6885bdfa354fb - Sigstore transparency entry: 214825218
- Sigstore integration time:
-
Permalink:
openags/SciAgents@fdb0792e955d480154bb8341c62b4f3750603ce7 -
Branch / Tag:
refs/tags/v0.0.1 - Owner: https://github.com/openags
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fdb0792e955d480154bb8341c62b4f3750603ce7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file sciagents-0.0.1-py3-none-any.whl.
File metadata
- Download URL: sciagents-0.0.1-py3-none-any.whl
- Upload date:
- Size: 4.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
97047788aeb4c99be2650ea87911aaed6312efe8fb819b1d58715262d42bcbcf
|
|
| MD5 |
2546233437f046c2d469f105c28813b1
|
|
| BLAKE2b-256 |
950bbaf2e4e19fda4e300e6eb003d056bad127f1e969c3b3436e148256b5eee0
|
Provenance
The following attestation bundles were made for sciagents-0.0.1-py3-none-any.whl:
Publisher:
publish.yml on openags/SciAgents
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
sciagents-0.0.1-py3-none-any.whl -
Subject digest:
97047788aeb4c99be2650ea87911aaed6312efe8fb819b1d58715262d42bcbcf - Sigstore transparency entry: 214825220
- Sigstore integration time:
-
Permalink:
openags/SciAgents@fdb0792e955d480154bb8341c62b4f3750603ce7 -
Branch / Tag:
refs/tags/v0.0.1 - Owner: https://github.com/openags
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fdb0792e955d480154bb8341c62b4f3750603ce7 -
Trigger Event:
push
-
Statement type: