semvec/pypi-packages huggingface dataset:
dev-tools-eagle 0.6.1
Implements LangGraph based agents following the CoALA framework.
Requires Python: <3.14,>=3.10

[![Unit Tests](https://github.com/smartassistant-unicamp/eagle/actions/workflows/test.yml/badge.svg)](https://github.com/smartassistant-unicamp/eagle/actions/workflows/test.yml)
<p align="center">
    <img src="./assets/EAGLE.jpg" alt="EAGLE Logo" />
</p>

# Enhanced Agents for Generative Language Excellence

## Do que se trata este projeto?

Esse projeto implementa a visão do [framework CoALA (Cognitive Architectures for Language Agents)](https://github.com/ysymyth/awesome-language-agents) no contexto do [LangGraph](https://www.langchain.com/langgraph), com agentes, ferramentas e estratégias de integração multiagentes para servirem de exemplo para novas implementações.

## Instalação

### Pré-requisitos (considerando o uso do Conda para gerenciar o ambiente python)

- [Miniforge 3](https://conda-forge.org/download/): O Miniforge é uma distribuição mínima do conda, que é um gerenciador de pacotes e ambientes virtuais. Ele será usado para criar um ambiente virtual para instalar as dependências do projeto.

### Criando o ambiente virtual

1. Uma vez instalado o Conda, abra o terminal e digite o seguinte comando:

```bash
conda create -n eagle python=3.10
```

2. Após a criação do ambiente, ative-o com o comando:

```bash
conda activate eagle
```

3. Instale a versão mais recente do Poetry com o comando:

```bash
pip install poetry==1.8.5
```

1. Instale as dependências do projeto com o comando:

```bash
poetry install
```

## Testes
Para executar os testes, execute os seguintes passos:

1. Ative o ambiente virtual com o comando:

```bash
conda activate eagle
```

2. Copie o arquivo `sample.test.env` para `.test.env` e preencha as variáveis de ambiente com as informações necessárias para o seu amnbiente de testes.

```bash
cp sample.test.env .test.env
```

### Ponto de Atenção

Os testes e exemplos dos notebooks estão baseados nos modelos `AzureChatOpenAI` para os LLMs e `AzureOpenAIEmbeddings` para os embeddings. Caso seja necessário utilizar outros nomes de modelos, tipos ou ajustar as relações com as variáveis de ambiente, essas alterações podem ser feitas na pasta [`tests/models`](tests/models).

## Exemplos de uso das funcionalidades

A pasta `notebooks` contém exemplos de uso das ferramentas. Para executar os exemplos:

1. Ative o ambiente virtual com o comando:

```bash
conda activate eagle
```

2. Ative a extensão de widgets do jupyter com o comando:

```bash
jupyter nbextension enable --py widgetsnbextension
```

3. Ative o jupyter lab com o comando:

```bash
jupyter lab
```

4. Abra o browser e execute os notebooks da pasta `notebooks`.
dev-tools-eagle-test 0.6.1
Implements LangGraph based agents following the CoALA framework.
Requires Python: <3.14,>=3.10

[![Unit Tests](https://github.com/smartassistant-unicamp/eagle/actions/workflows/test.yml/badge.svg)](https://github.com/smartassistant-unicamp/eagle/actions/workflows/test.yml)
<p align="center">
    <img src="./assets/EAGLE.jpg" alt="EAGLE Logo" />
</p>

# Enhanced Agents for Generative Language Excellence

## Do que se trata este projeto?

Esse projeto implementa a visão do [framework CoALA (Cognitive Architectures for Language Agents)](https://github.com/ysymyth/awesome-language-agents) no contexto do [LangGraph](https://www.langchain.com/langgraph), com agentes, ferramentas e estratégias de integração multiagentes para servirem de exemplo para novas implementações.

## Instalação

### Pré-requisitos (considerando o uso do Conda para gerenciar o ambiente python)

- [Miniforge 3](https://conda-forge.org/download/): O Miniforge é uma distribuição mínima do conda, que é um gerenciador de pacotes e ambientes virtuais. Ele será usado para criar um ambiente virtual para instalar as dependências do projeto.

### Criando o ambiente virtual

1. Uma vez instalado o Conda, abra o terminal e digite o seguinte comando:

```bash
conda create -n eagle python=3.10
```

2. Após a criação do ambiente, ative-o com o comando:

```bash
conda activate eagle
```

3. Instale a versão mais recente do Poetry com o comando:

```bash
pip install poetry==1.8.5
```

1. Instale as dependências do projeto com o comando:

```bash
poetry install
```

## Testes
Para executar os testes, execute os seguintes passos:

1. Ative o ambiente virtual com o comando:

```bash
conda activate eagle
```

2. Copie o arquivo `sample.test.env` para `.test.env` e preencha as variáveis de ambiente com as informações necessárias para o seu amnbiente de testes.

```bash
cp sample.test.env .test.env
```

### Ponto de Atenção

Os testes e exemplos dos notebooks estão baseados nos modelos `AzureChatOpenAI` para os LLMs e `AzureOpenAIEmbeddings` para os embeddings. Caso seja necessário utilizar outros nomes de modelos, tipos ou ajustar as relações com as variáveis de ambiente, essas alterações podem ser feitas na pasta [`tests/models`](tests/models).

## Exemplos de uso das funcionalidades

A pasta `notebooks` contém exemplos de uso das ferramentas. Para executar os exemplos:

1. Ative o ambiente virtual com o comando:

```bash
conda activate eagle
```

2. Ative a extensão de widgets do jupyter com o comando:

```bash
jupyter nbextension enable --py widgetsnbextension
```

3. Ative o jupyter lab com o comando:

```bash
jupyter lab
```

4. Abra o browser e execute os notebooks da pasta `notebooks`.
dataknobs-structures 1.0.5
Data structures for AI knowledge bases
Requires Python: >=3.10

# dataknobs-structures

Data structures for AI knowledge bases.

## Installation

```bash
pip install dataknobs-structures
```

## Features

- **ConditionalDict**: Dictionary with conditional value retrieval
- **Document**: Document representation with metadata
- **RecordStore**: Efficient record storage and retrieval
- **Tree**: Tree data structure with various traversal methods

## Usage

```python
from dataknobs_structures import Tree, Document

# Create a tree structure
tree = Tree()
tree.add_node("root", "Root Node")
tree.add_node("child1", "Child 1", parent="root")

# Create a document
doc = Document(
    content="Sample document content",
    metadata={"author": "John Doe", "date": "2024-01-01"}
)
```

## License

See LICENSE file in the root repository.
pycfit 1.0.0
Component Fitting package
Requires Python: >=3.11

# Python Component Fitting Tool  (pycfit)

Python program to replicate many spectral fitting functions of the CFIT system from SolarSoft IDL.  



# Installation

`pip install pycfit`

### 🛠 Important: Conda Environments Must Have Python Installed
If using Conda, ensure your environment includes Python before installing:

```sh
conda create --name myenv python
conda activate myenv

pip install pycfit
```
 

# Use
### Use interactive fitter to find an initial model based on an averaged spectra

```python
import pycfit

# Retrieve sample data
wavelength, intensity, uncertainty = pycfit.data.get_example_single_spectrum()

# Call the GUI fitter
model = pycfit.cfit_gui(wavelength, intensity, uncertainty=uncertainty)
```


### If you `export` your model from within the GUI, you can initialize a new pyCFIT instance with it later

```python
from pathlib import Path

fname = Path('path/to/saved/model.py')
model = pycfit.cfit_gui(wavelength, intensity, uncertainty=uncertainty, function=fname)

```


### Use the interactive viewer to fit each point of the raster to the initial model and adjust or mask individual point fittings as needed
```python
# Retrieve a small-patch of sample data
wavelength, intensity, uncertainty, mask = pycfit.data.get_example_grid_spectra(patch=True)

# Create a Grid fitter, using the previously defined model
myGrid = pycfit.cfit_grid(model, wavelength, intensity, 
                uncertainty=uncertainty, mask=mask)

# Fit the whole raster
myGrid.fit(maxiter=100) # Astropy fitter keywords like "maxiter" can be passed through

# Inspect and modify the fits at each point
print(myGrid.shape)
myGrid = pycfit.cfit_grid_gui(myGrid)

# Get results
results = myGrid.get_results()
```


# Contacts:
### Software Maintenance:
Ayris Narock:  ayris.a.narock@nasa.gov
### NASA Official:
Therese Kucera:  therese.a.kucera@nasa.gov



# License

This project is Copyright (c) National Aeronautics and Space Administration and licensed under
the terms of the Apache Software License 2.0 license. This package is based upon
the `Openastronomy packaging guide <https://github.com/OpenAstronomy/packaging-guide>`_
which is licensed under the BSD 3-clause licence. See the licenses folder for
more information.
wcheck 0.5.4
Manage a workspace of git repositories
Requires Python: <3.13,>=3.9
Keywords: git, repository, version-control, workspace

# wcheck

[![Documentation](https://img.shields.io/badge/docs-GitHub%20Pages-blue)](https://pastord.github.io/wcheck/)
[![PyPI version](https://badge.fury.io/py/wcheck.svg)](https://badge.fury.io/py/wcheck)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

**Manage a workspace of git repositories**

wcheck compares different workspaces of git repositories and reports their differences. It supports local workspaces and YAML configuration files ([vcstool](https://github.com/dirk-thomas/vcstool) format).

## Quick Install

```bash
uv tool install wcheck          # Basic
uv tool install 'wcheck[gui]'   # With GUI (PySide6)
uv tool install 'wcheck[tui]'   # With TUI (Textual)
uv tool install 'wcheck[gui,tui]'  # With both
```

## Quick Example

```bash
# Check status of all repositories
wcheck status

# Compare with configuration file
wcheck wconfig -c workspace.yaml

# Interactive terminal interface
wcheck status --tui
```

## Documentation

📖 **Full documentation:** [https://pastord.github.io/wcheck/](https://pastord.github.io/wcheck/)

- [Installation Guide](https://pastord.github.io/wcheck/installation/) - Detailed installation instructions
- [Quick Start](https://pastord.github.io/wcheck/quickstart/) - Get started in minutes
- [CLI Reference](https://pastord.github.io/wcheck/cli/) - Complete command reference
- [Configuration Files](https://pastord.github.io/wcheck/configuration/) - YAML file format

## License

MIT License - see [LICENSE](LICENSE) for details.
markpub 2.1.1
Build (web publish) Markdown and Massive Wiki sites.
Requires Python: <4.0,>=3.12
Keywords: markdown, static-site-generator, wiki

# markpub  

![PyPI version](https://img.shields.io/pypi/v/markpub)  

MarkPub builds a static HTML website from a directory of Markdown files.  
The website supports wiki-links, transclusion, and provides full-text
search.  

MarkPub installs configuration files that GitHub Pages and Netlify can use to automatically publish the HTML files on the web.

## Requirements

- Python 3.12 or higher.

## Install

### Using pip
``` shell
pip install markpub
```

## Usage

### Overview

```shell
markpub [--version] <command> [options]
```

Available commands:
- `init` - Initialize a new MarkPub site
- `build` - Build HTML website from Markdown files

### Commands

#### `markpub init <directory>`

Initialize a new MarkPub site in the specified directory. This creates:
- `.markpub/markpub.yaml` - Site configuration file
- Configuration files for GitHub Pages/Netlify deployment
- `Sidebar.md` - Website navigation links displayed sidebar on webpages

**Example:**
```shell
markpub init my-wiki
```

#### `markpub build [options]`

Build a static website from Markdown files.

**Required options:**
- `-i, --input <directory>` - Input directory containing Markdown files
- `-o, --output <directory>` - Output directory for generated HTML files

**Optional options:**
- `--config, -c <file>` - Path to YAML config file (default: `./markpub.yaml`)
- `--root, -r <name>` - Website root directory name (needed for GitHub Pages hosting)
- `--lunr` - Create lunr search index (requires npm and lunr to be installed)
- `--commits` - Include Git commit messages and times in All Pages

**Examples:**
```shell
# Basic build
markpub build -i my-wiki -o my-wiki-site

# Build with search
markpub build -i my-wiki -o my-wiki-site --lunr

# Build for GitHub Pages with Git history
markpub build -i my-wiki -o my-wiki-site --root my-repo --commits
```

### Getting Help

Use `--help` with any command for detailed usage information:

```shell
markpub --help
markpub init --help
markpub build --help
```

### Markpub website themes

Markpub website themes are managed by the Python package [markpub-themes](https://pypi.org/project/markpub-themes/)  
Management and use of themes is documented there. This package is installed with `markpub`, and after installation, help information is available:  

```shell
markpub-themes -h
```

## Documentation  

- [Basic install instructions](https://markpub.org/documentation/markpub_basic_install)  
- [Install and Web-publish instructions](https://markpub.org/documentation/markpub_install_and_web-publish_steps)  

- Further documentation is under development.
helix.personmatching 1.0.63
helix.personmatching
Requires Python: >=3.10

# helix.personmatching

<p align="left">
  <a href="https://github.com/icanbwell/helix.personmatching/actions">
    <img src="https://github.com/icanbwell/helix.personmatching/workflows/Build%20and%20Test/badge.svg"
         alt="Continuous Integration">
  </a>
  <a href="https://github.com/icanbwell/helix.personmatching/blob/main/LICENSE">
    <img src="https://img.shields.io/badge/license-Apache%202-blue"
         alt="GitHub license">
  </a>
</p>

## Entrypoint
[helix_personmatching/matchers/matcher.py](helix_personmatching/matchers/matcher.py)

## Inputs
This code takes in:
1. A source Patient/Person resource or a Bundle of Patient/Person resources
2. A target Patient/Person resource or a Bundle of Patient/Person resources
3. A set of rule options/weights
4. Whether to return only successful matches or all match results
5. (Optional) Matching threshold (between 0 and 1).  Can also be set as an environment variable: `PERSON_MATCH_THRESHOLD`
6. (Optional) Average score boost (between 0 and 1).  Can also be set as an environment variable: `PERSON_MATCH_AVERAGE_SCORE_BOOST`


## Outputs
1. A list of match results where id_source is id of source record and id_target is id of matched record.

# Logic
1. The code runs through each rule and calculates a uniqueness probability (between 0 and 1) if the rule matches.
2. The code then picks the rule with the highest uniqueness probability and uses that probability
3. The code then calculates the average of all the other rule probabilities and boosts the uniqueness probability by it.
4. The code then sees if any other boosting rules were requested and boosts the probability by those

# Weights
There are five cases when matching fields of two records in a rule and the weights that are applied for each case:
1. Field present in both sides and match -> `exact_match`
2. Field present in both sides and partial match -> `partial_match`
3. Field missing in both sides -> `missing`
4. Field missing in one side -> `missing`
5. Field present in both sides but do not match -> 0.0

For boosting rules, there is an additional `boost` weight.
site2markdown 1.0.2
Convert URL content to markdown for better LLM context.
Requires Python: >=3.7

# site2markdown

A robust Python utility to convert web pages into clean, structured Markdown. Optimized for generating high-quality context for Large Language Models (LLMs).

## Installation

```bash
pip install site2markdown
```

## Usage

![site2markdown usage example](https://8upload.com/image/d8e2107ae0959016/doc-site2md.png)

### Quick Start
```python
from site2markdown import UrlToMarkdown

converter = UrlToMarkdown()

# Convert URL to Markdown
markdown = converter.convert(
    url="https://www.example.com",
    inline_title=True,        # Include the page title as an H1
    ignore_links=False,       # Preserve hyper-links
    improve_readability=True  # Use readability algorithm to filter boilerplate
)

print(markdown)
```

### Converting HTML Content
```python
from site2markdown import UrlToMarkdown

converter = UrlToMarkdown()
html_content = "<html><body><h1>Example</h1><p>Text content.</p></body></html>"

markdown = converter.convert_html(
    html=html_content,
    url="https://www.example.com",  # Optional: base URL for resolving relative paths
    inline_title=True,
    improve_readability=True
)

print(markdown)
```

## Core Features

- **LLM Optimized**: Produces clean text with minimal noise, ideal for RAG and LLM context.
- **Smart Filtering**: Automatic removal of scripts, styles, and non-content elements.
- **Specialized Handling**: Custom parsing logic for sites like Stack Overflow, Wikipedia, and Medium.
- **Readability Engine**: Integration with Mozilla's Readability algorithm to extract the main article body and skip navigation/sidebars.
- **Structure Preservation**: Reliable conversion of code blocks, tables, and nested lists.
- **URL Resolution**: Automatically converts relative links and image paths to absolute URLs.

## Configuration Options

| Option | Type | Description | Default |
| :--- | :--- | :--- | :--- |
| `inline_title` | `bool` | Includes the page title as an H1 heading at the top. | `True` |
| `ignore_links` | `bool` | Removes all hyperlinks from the output. | `False` |
| `improve_readability` | `bool` | Processes the page through a readability filter before conversion. | `True` |

## License

This project is licensed under the MIT License.
hxnfly 0.0.12
Tools for NSLS-II HXN fly scans 
Requires Python: >=3.10

======
hxnfly
======

Specify PPMac host name or address by setting an environment variable PPMAC_HOST.

Shell script::

  export PPMAC_HOST=<host-name-or-ip>

Python script::

  os.environ["PPMAC_HOST"] = "<host-name-or-ip>"
laspy 2.7.0
Native Python ASPRS LAS read/write library
Requires Python: >=3.10
Keywords: gis, las, lidar

# Laspy

Laspy is a python library for reading, modifying and creating LAS LiDAR
files.

Laspy is compatible with Python  3.8+.

## Features

- LAS support.
- LAZ support via `lazrs` or `laszip` backend.
- LAS/LAZ streamed/chunked reading/writting.
- [COPC] support over files.
- [COPC] support over https with `requests` package.
- CRS support via `pyproj` package.


[COPC]: https://github.com/copcio/copcio.github.io


## Examples

Directly read and write las
```Python
import laspy

las = laspy.read('filename.las')
las.points = las.points[las.classification == 2]
las.write('ground.laz')
```


Open data to inspect header (opening only reads the header and vlrs)

```Python
import laspy

with laspy.open('filename.las') as f:
    print(f"Point format:       {f.header.point_format}")
    print(f"Number of points:   {f.header.point_count}")
    print(f"Number of vlrs:     {len(f.header.vlrs)}")
```
Use the 'chunked' reading & writing features

```Python
import laspy

with laspy.open('big.laz') as input_las:
    with laspy.open('ground.laz', mode="w", header=input_las.header) as ground_las:
        for points in input_las.chunk_iterator(2_000_000):
            ground_las.write_points(points[points.classification == 2])

```

Appending points to existing file

```Python
import laspy

with laspy.open('big.laz') as input_las:
    with laspy.open('ground.laz', mode="a") as ground_las:
        for points in input_las.chunk_iterator(2_000_000):
            ground_las.append_points(points[points.classification == 2])
```

API Documentation and tutorials are available at
[ReadTheDocs](https://laspy.readthedocs.io/en/latest/).

## Installation

Laspy can be installed either with `pip`:

```
pip install laspy # without LAZ support
# Or
pip install laspy[laszip] # with LAZ support via LASzip
# Or
pip install laspy[lazrs] # with LAZ support via lazrs
```

## Changelog

See [CHANGELOG.md](CHANGELOG.md)
jobflow-remote 1.0.0
Jobflow Remote is a Python package to run jobflow workflows on remote resources
Requires Python: !=3.14.1,>=3.10

<div align="center">

# ![Jobflow remote](doc/source/_static/img/jfr_logo.svg)

</div>

[![tests](https://img.shields.io/github/actions/workflow/status/Matgenix/jobflow-remote/testing.yml?branch=develop&label=tests)](https://github.com/Matgenix/jobflow-remote/actions?query=workflow%3Atesting)
[![code coverage](https://img.shields.io/codecov/c/gh/Matgenix/jobflow-remote)](https://codecov.io/gh/Matgenix/jobflow-remote)
[![pypi version](https://img.shields.io/pypi/v/jobflow-remote?color=blue)](https://pypi.org/project/jobflow-remote)
![supported python versions](https://img.shields.io/pypi/pyversions/jobflow-remote)

**[Full Documentation][docs]**

Jobflow Remote is a Python package to run [jobflow](https://materialsproject.github.io/jobflow) workflows on remote resources.

## Need help?

Ask questions about Jobflow Remote on the [Jobflow Remote support forum][help-forum].
If you've found an issue with jobflow-remote, please submit a bug report on [GitHub Issues][issues].

## What’s new?

Track changes to jobflow-remote through the [changelog][changelog].

## Contributing

We greatly appreciate any contributions in the form of a pull request.
Additional information on contributing to jobflow-remote can be found [here][contributing].
We maintain a list of all contributors [here][contributors].

### Code of conduct

Help us keep jobflow-remote open and inclusive.
Please read and follow our [Code of Conduct][codeofconduct].

[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)](CODE_OF_CONDUCT.md)

## License

jobflow-remote is released under a modified BSD license; the full text can be found [here][license].


## Citation

If you use Jobflow in your work, please cite it as follows:

- "Jobflow: Computational Workflows Made Simple", A.S. Rosen, M. Gallant, J. George, J. Riebesell, H. Sahasrabuddhe, J.X. Shen, M. Wen, M.L. Evans, G. Petretto, D. Waroquiers, G.‑M. Rignanese, K.A. Persson, A. Jain, A.M. Ganose, _Journal of Open Source Software_, 9(93), 5995 (2024) DOI: [10.21105/joss.05995](https://doi.org/10.21105/joss.05995)

## Acknowledgements

jobflow-remote is developed and maintained by Matgenix SRL.

A full list of all contributors can be found [here][contributors].

[help-forum]: https://github.com//Matgenix/jobflow-remote/issues
[issues]: https://github.com//Matgenix/jobflow-remote/issues
[installation]: https://github.com//Matgenix/jobflow-remote/blob/develop/INSTALL.md
[contributing]: https://github.com/Matgenix/jobflow-remote/blob/develop/CONTRIBUTING.md
[codeofconduct]: https://github.com/Matgenix/jobflow-remote/blob/develop/CODE_OF_CONDUCT.md
[changelog]: https://github.com//Matgenix/jobflow-remote/blob/develop/CHANGELOG.md
[contributors]: https://github.com/Matgenix/jobflow-remote/graphs/contributors
[license]: https://raw.githubusercontent.com/Matgenix/jobflow-remote/blob/develop/LICENSE
[docs]: https://Matgenix.github.io/jobflow-remote/