semvec/pypi-packages huggingface dataset:
metricgraph 0.1.1
Generate and plot metric and weighted graphs
Requires Python: >=3.8

# MetricGraph

**metricgraph** is a Python package to generate, manipulate, and visualize metric graphs in 2D and 3D.
It supports directed/undirected graphs, self-loops, connectivity constraints, and interactive plotting.

---

## 📚 Documentation

Full documentation is available at: [https://metricgraph.readthedocs.io/en/latest/](https://metricgraph.readthedocs.io/en/latest/)

---

## ⚡ Installation

You can install the package via pip:

```bash
pip install metricgraph
```

Or install from source:

```bash
git clone https://github.com/ploki99/metricgraph.git
cd metricgraph
pip install -e .
```

---

## 🚀 Examples

```python
import numpy as np
import random

from metricgraph import MetricGraph, WeightedGraph

# Construct 3D MetricGraph and plot it
vertices = [[0, 0, 0.1],
            [0, 0.8, -0.1],
            [1, 0, 0.4],
            [0.7, 0.4, 0.3]]

edges = [[0, 1], [0, 2], [1, 1], [2, 3], [3, 2]]
graph = MetricGraph(vertices, edges)
print(graph)
print(graph.get_properties())
graph.plot(directed=True)

# Generate 2D WeightedGraph and plot edges/vertices weights 
random.seed(42)
graph2 = WeightedGraph.generate_graph(n_vertices=10, n_dim=2)
graph2.set_edges_weight('edge_test', np.arange(9))
graph2.plot_weight('edge_test', title='test edges weight')
graph2.set_vertices_weight('vert_test', np.arange(10))
graph2.plot_weight('vert_test', title='test vertices weight')

```

---

## 🛠 Features

* Generate graphs with specified number of vertices, dimensions, and connectivity constraints
* Compute graph metrics and boundary nodes
* Interactive 2D/3D plotting
* Weighted graphs support
* Fully documented API

---

## 📄 License

[MIT License](LICENSE)
srx-lib-azure 0.5.1
Azure helpers for SRX services: Blob, Email, Table, Document Intelligence, Speech Services
Requires Python: >=3.12

# srx-lib-azure

Lightweight wrappers over Azure SDKs used across SRX services.

What it includes:
- **Blob**: upload/download helpers, SAS URL generation
- **Email** (Azure Communication Services): simple async sender
- **Table**: simple CRUD helpers
- **Document Intelligence** (OCR): document analysis from URLs or bytes

## Install

PyPI (public):

- `pip install srx-lib-azure`

uv (pyproject):
```
[project]
dependencies = ["srx-lib-azure>=0.1.0"]
```

## Usage

Blob:
```
from srx_lib_azure.blob import AzureBlobService
blob = AzureBlobService()
url = await blob.upload_file(upload_file, "documents/report.pdf")
```

Email:
```
from srx_lib_azure.email import EmailService
svc = EmailService()
await svc.send_notification("user@example.com", "Subject", "Hello", html=False)
```

Table:
```
from srx_lib_azure.table import AzureTableService
store = AzureTableService()
store.ensure_table("events")
store.upsert_entity("events", {"PartitionKey":"p","RowKey":"r","EventType":"x"})
```

Document Intelligence (OCR):
```python
from srx_lib_azure import AzureDocumentIntelligenceService

# Initialize with endpoint and key
doc_service = AzureDocumentIntelligenceService(
    endpoint="https://your-resource.cognitiveservices.azure.com/",
    key="your-api-key"
)

# Analyze document from URL
result = await doc_service.analyze_document_from_url(
    url="https://example.com/document.pdf",
    model_id="prebuilt-read"  # or "prebuilt-layout", "prebuilt-invoice", etc.
)

# Analyze document from bytes
with open("document.pdf", "rb") as f:
    content = f.read()
result = await doc_service.analyze_document_from_bytes(
    file_content=content,
    model_id="prebuilt-read"
)

# Result structure:
# {
#     "success": True/False,
#     "content": "extracted text...",
#     "pages": [{"page_number": 1, "width": 8.5, ...}, ...],
#     "page_count": 10,
#     "confidence": 0.98,
#     "model_id": "prebuilt-read",
#     "metadata": {...},
#     "error": None  # or error message if failed
# }
```

## Environment Variables

- **Blob & Table**: `AZURE_STORAGE_CONNECTION_STRING` (required)
- **Email (ACS)**: `ACS_CONNECTION_STRING`, `EMAIL_SENDER`
- **Document Intelligence**: `AZURE_DOCUMENT_INTELLIGENCE_ENDPOINT`, `AZURE_DOCUMENT_INTELLIGENCE_KEY`
- **Optional**: `AZURE_STORAGE_ACCOUNT_KEY`, `AZURE_BLOB_URL`, `AZURE_SAS_TOKEN`

## Optional Dependencies

All services are optional and won't break if their dependencies aren't installed:

```bash
# Base installation (includes all services by default)
pip install srx-lib-azure

# Or install only what you need - document intelligence is optional
pip install srx-lib-azure[document]  # Adds Document Intelligence support

# Install with all optional dependencies
pip install srx-lib-azure[all]
```

If you import a service without its required Azure SDK, it will log a warning but won't crash.

## Release

Tag `vX.Y.Z` to publish to GitHub Packages via Actions.

## License

Proprietary © SRX