semvec/pypi-packages huggingface dataset:
alert-helper 0.1.8
Simple python notification helper.
Requires Python: >=3.11

# Simple Python Notification Helper

## Supported Apps
### Slack
- After obtaining a webhook URL from Slack, set it as the `SLACK_WEBHOOK_URL` environment variable.

## Usage
- Context manager
```python
from alert_helper import alert

with alert("test-job"):
    # do something
```

- Decorator
```python
from alert_helper import alert

@alert("test-job")
def dummy():
    # do something

dummy()
```

- Only alert when there is an error
```python
from alert_helper import alert

with alert("test-job", on="error"):
    # do something
```

## To Do
- [ ] Support other apps.
cohmetrix-br-lib 0.1.5
Biblioteca para extração de características linguísticas para o Português Brasileiro.
Requires Python: >=3.10

<h1 align="center">
  CohMetrix-BR
  <br>
</h1>

<h4 align="center">Biblioteca para extração de características linguísticas para o Português Brasileiro.</h4>


## Descrição

Esse repositório implementa uma versão em biblioteca da API Web Coh-Metrix BR descrito em ["Coh-Metrix PT-BR: Uma API web de análise textual para a educação (2020)"](https://doi.org/10.5753/cbie.wcbie.2020.179).

Esse é um trabalho em progresso que reimplementa as características como descritas no artigo, todavia permitindo o uso direto em códigos Python.


## Quickstart

A biblioteca é organizada no seguinte formato:

```mermaid
---
title: Diagrama de Pacotes
---
flowchart TD

Root(<b>cohmetrixBR</b>\nPacote raiz da biblioteca.)
Root --> Resources(<b>resources</b>\nArmazena modelos e recursos utilizados para\no cálculo das características.)
Root --> Features(<b>features</b>\nContém diferentes módulos com a implementação\ndas características descritas no artigo.)
```

Para utilização, só precisamos importar diretamente o módulo com as características desejadas e invocar a respectiva função. Um exemplo desse processo abaixo:

```python
# Importando o módulo com as
#   características relacionadas à conectivos
from cohmetrixBR.features import connectives

# Calculando a característica CNCAll para um
#   texto qualquer:
connectives.CNCAll('Esse é um texto de exemplo.')
# 0.0
```

Outra forma de utilizar a biblioteca é calculando múltiplas características de uma única vez. Todos os módulos expõem uma variável `FEATURES` que contém a lista de todas as características disponibilizadas naquele módulo. Assim, é possível fazer dessa forma:

```python
# Obtendo todas as características presentes
#   na biblioteca
from cohmetrixBR.features import FEATURES

# Definindo o texto de exemplo
text = "Texto de exemplo para extração de características"

# Calculando todas as características
features = [f(text) for f in FEATURES]
# [1, 1, 1.0, ...,  15.797142857142859, -45.032]
```


## Instalação

Primeiro, realiza a instalação da biblioteca via `pip` ou através do `git clone`:

### 1. Instalando com o pip

```bash
# Configurar ambiente virtual
# ...

# Instalar através do pip
$ pip install cohmetrix-br-lib
```

### 2. Instalando localmente

```bash
# Clonar repositório
$ git clone https://github.com/moesio-f/cohmetrix-br

# Acessar diretório
$ cd cohmetrix-br

# Configurar ambiente virtual
# ...

# Instalar através do pip
$ pip install -e .
```

---
fastmcp-email-server 0.1.0
FastMCP 邮件收发 MCP 服务器
Requires Python: >=3.10

# FastMCP 邮件服务器

基于 FastMCP 框架构建的邮件收发 MCP 服务器，支持多种邮箱服务商的邮件收发和附件处理功能。

## 🚀 FastMCP 框架特性

FastMCP 提供了简洁的 Python 风格接口，只需使用装饰器即可将函数封装为 MCP 工具：

```python
from fastmcp import FastMCP

mcp = FastMCP("EmailService")

@mcp.tool()
def send_text_email(to_addr: str, subject: str, content: str, account: str, password: str) -> dict:
    """发送纯文本邮件"""
    # 实现邮件发送逻辑
    return {"status": "success", "message": "邮件发送成功"}

if __name__ == "__main__":
    mcp.run(transport="stdio")
```

## 📧 提供的邮件工具

### 邮件接收
- `get_newest_email`: 获取最新的未读邮件
- `check_emails`: 检查指定类型和数量的邮件  
- `save_attachment`: 保存邮件附件到指定路径

### 邮件发送
- `send_text_email`: 发送纯文本邮件
- `send_html_email`: 发送HTML格式邮件
- `send_email_with_attachment`: 发送带附件的邮件

### 服务器配置
- `get_server_config`: 自动获取邮箱服务器配置

## 📦 安装与运行（使用 uv）

### 安装依赖

```bash
uv sync
```

### 以模块方式运行（推荐）

```bash
uv run -m fastmcp_email_server
```

或使用安装的脚本入口：

```bash
uv run fastmcp-email-server
```

### 直接运行源码（可选）

```bash
uv run python src/fastmcp_email_server/server.py
```

## 🔧 调试模式

使用 MCP Inspector 进行调试：

```bash
uv run mcp dev src/fastmcp_email_server/server.py
```

访问 http://localhost:5173 进行交互测试。

## 📋 支持的邮箱服务商

- 163邮箱（163.com）
- 126邮箱（126.com）  
- QQ邮箱（qq.com）
- Gmail（gmail.com）
- Outlook/Hotmail（outlook.com, hotmail.com）
- 阿里云邮箱（aliyun.com）
- 新浪邮箱（sina.com）

## 💡 使用示例

### 配置 MCP 客户端

在支持 MCP 的客户端（Claude Desktop、Cherry Studio、Cursor 等）中配置：

```json
{
  "mcpServers": {
    "email": {
  "command": "uv",
  "args": [
    "run",
    "-m",
    "fastmcp_email_server"
  ],
      "env": {}
    }
  }
}
```

### 工具调用示例

```json
{
  "name": "send_text_email",
  "arguments": {
    "to_addr": "recipient@example.com",
    "subject": "测试邮件",
    "content": "这是一封测试邮件",
    "account": "your-email@163.com", 
    "password": "your-auth-code"
  }
}
```

## 🔐 邮箱授权码说明

大多数邮箱服务商需要使用授权码而不是登录密码：

- **163/126邮箱**: 邮箱设置 → 客户端授权密码 → 开启并获取授权码
- **QQ邮箱**: 设置 → 账户 → 开启POP3/IMAP服务并获取授权码
- **Gmail**: 开启两步验证并生成应用专用密码

## 📁 项目结构

```
src/
└── fastmcp_email_server/
    ├── __init__.py          # 包入口，提供命令行主函数
    ├── __main__.py          # 支持 python -m 形式运行
    ├── server.py            # FastMCP 服务器主文件
    ├── email_config.py      # 邮箱服务器配置
    ├── send_163.py          # 邮件发送功能
    └── receive_163.py       # 邮件接收功能
```
walitool 0.1.0
A differential evolution optimization toolbox
Requires Python: >=3.8

# walitool: 差分进化优化工具库

`walitool` 是一个轻量级的差分进化（Differential Evolution, DE）优化算法工具库，基于 NumPy 和 Numba 实现，专注于提供高效、易用的全局优化解决方案，适用于科学计算、工程优化等场景。


## 核心特性

- **高效计算**：使用 Numba 进行 JIT 编译加速，大幅提升算法运行效率
- **简洁接口**：封装完整的差分进化流程，提供直观的 API 接口
- **灵活配置**：支持自定义参数（种群大小、迭代次数、交叉概率等）
- **边界处理**：内置变量边界约束处理机制
- **轻量依赖**：仅依赖 NumPy 和 Numba，易于部署


## 安装方法

### 从源码安装
```bash
git clone https://github.com/waliwuao/walitool.git
cd walitool
pip install .
```

### 开发模式安装（用于本地开发）
```bash
pip install -e .[dev]
```


## 快速开始

以下是使用 `walitool` 求解函数最小值的简单示例：

```python
import numpy as np
from walitool import DE

# 定义目标函数（以Sphere函数为例）
def sphere(x):
    return np.sum(x**2)

# 初始化差分进化优化器
de = DE(
    func=sphere,          # 目标函数
    dim=30,               # 变量维度
    popsize=50,           # 种群大小
    lower_bound=-100,     # 变量下界（标量或数组）
    upper_bound=100,      # 变量上界（标量或数组）
    f1=0.8,               # 差分权重1
    f2=0.2,               # 差分权重2
    cr=0.9,               # 交叉概率
    maxiter=1000,         # 最大迭代次数
    logging=True          # 打印日志
)

# 执行优化
best_position, best_fitness = de.optimize()

# 输出结果
print(f"最优解: {best_position}")
print(f"最优适应度: {best_fitness}")
```


## 核心组件说明

`walitool` 的差分进化算法由以下核心组件构成：

1.** 种群生成器（Generator）**- 负责初始化种群，支持根据变量边界生成均匀分布的初始解

2.** 变异操作（Mutate）**- 实现差分变异策略，生成变异向量
   - 支持自定义变异权重（f1, f2）

3.** 交叉操作（Crossover）**- 对父代和变异向量进行交叉，生成试验向量
   - 支持交叉概率（cr）配置，确保种群多样性

4.** 选择操作（Selection）**- 基于适应度值选择更优个体保留到下一代
   - 采用贪婪选择策略，保留更优解

5.** 优化器（DE）**- 整合上述组件，提供完整的差分进化流程
   - 支持迭代过程日志记录，便于监控优化进度


## 参数说明

| 参数名        | 类型          | 描述                          | 默认值       |
|---------------|---------------|-------------------------------|--------------|
| `func`        | 函数          | 待优化的目标函数（求最小值）  | 无           |
| `dim`         | int           | 变量维度                      | 无           |
| `popsize`     | int           | 种群大小                      | 50           |
| `lower_bound` | 标量/数组     | 变量下界                      | 0（全维度）  |
| `upper_bound` | 标量/数组     | 变量上界                      | 1（全维度）  |
| `f1`          | float         | 差分变异权重1                 | 1.0          |
| `f2`          | float         | 差分变异权重2                 | 0.01         |
| `cr`          | float         | 交叉概率（0-1）               | 0.95         |
| `maxiter`     | int           | 最大迭代次数                  | 100          |
| `logging`     | bool          | 是否打印迭代日志              | False        |
| `dtype`       | numpy dtype   | 数值类型                      | np.float64   |


## 注意事项

- 目标函数需接收 NumPy 数组作为输入，并返回标量适应度值
- 若变量各维度边界不同，可传入与维度相同长度的数组作为 `lower_bound`/`upper_bound`
- 对于复杂优化问题，建议调整 `popsize`、`f1`、`f2`、`cr` 等参数以获得更好性能
- 日志打印频率为每100代一次（可在源码中修改）


## 开发与贡献

克隆仓库并安装开发依赖：
   ```bash
   git clone https://github.com/waliwuao/walitool.git
   cd walitool
   pip install -e .[dev]
   ```
欢迎提交 Issue 和 Pull Request 帮助改进本项目！


## 许可证

本项目基于 MIT 许可证开源，详情参见 [LICENSE](LICENSE) 文件。