semvec/pypi-packages huggingface dataset:
ai-doc-validator-sdk 0.1.1
Python SDK for AI-powered document validation and text extraction
Requires Python: >=3.7

# AI Validator

Python SDK for AI-powered document validation and text extraction.

## Installation
```bash
pip install ai-doc-validator-sdk
```

## Quick Start
```python
from ai-doc-Validator-sdk import Validator

# Initialize
validator = Validator(
    key="sk_test_xxxxxxxxxxxxxxxxxxxxxxxx",   # Your API key
    pid="tnmc",                                # Product ID (e.g., tnmc, kyc_pro, etc.)
    mid="USQDQVKC68"                           # Merchant/User ID (_id from your users collection)
)

# Extract text from a document
result = validator.extractText(
    publicUrl="https://your-bucket.s3.amazonaws.com/id-card.pdf",
    extra={
        "fc": "kyc",
        "fid": "F123456",
        "uid": "user_789",
        "ruid": "request_abc123"
    }
)

print(f"Status: {result['status']}")
print(f"Queue: {result['payload']['queueName']}")
```

## Features

- Text extraction from documents
- Face validation
- Combined validation
- Webhook support for async results

## Configuration

### Development (default)
```python
validator = Validator(
    apiKey="sk_test_...",
    productId="pId"
)
# Uses: http://127.0.0.1:5002
```

### Production
```python
validator = Validator(
    apiKey="sk_prod_...",
    productId="pId",
    environment="production"
)
# Uses: https://api.yourproduction.com
```

### Custom URL
```python
validator = Validator(
    apiKey="sk_test_...",
    productId="pId",
    baseUrl="http://your-custom-domain.com"
)
```
pyRobotiqUR 0.2.2
Simple Python interface for Robotiq grippers over a TCP socket (URCap/UR controller).
Requires Python: <=3.14,>=3.10
Keywords: robotiq, robotics, gripper, ur, urcap

# <img src="https://github.com/johannesWen/pyRobotiqUR/blob/main/assets/pyrobotiqur_icon.png?raw=true" alt="pyRobotiqUR" width="50"/>  pyRobotiqUR for Universal Robots

<p align="left">
    <!-- <img src="./assets/pyrobotiqur_icon.png" alt="pyRobotiqUR icon" width="50"/> -->
    <a href="https://github.com/johannesWen/repo2file/actions/workflows/ci.yml">
        <img src="https://github.com/johannesWen/repo2file/actions/workflows/ci.yml/badge.svg" alt="CI"/>
    </a>
    <a href="https://codecov.io/github/johannesWen/pyRobotiqUR">
        <img src="https://codecov.io/github/johannesWen/pyRobotiqUR/graph/badge.svg?token=QYY9QI0YHS" alt="codecov"/>
    </a>
</p>

`pyRobotiqUR` is a small Python library that provides a simple socket-based interface
to Robotiq grippers connected to a Universal Robots (UR) controller via the
Robotiq URCap.

It talks to the UR controller over TCP using the Robotiq ASCII `GET/SET` protocol
on the URCap’s internal server port (typically `63352`).

## Features

- Connect to a UR controller over TCP/IP
- Activate / reset the Robotiq gripper
- Move to a raw position `0–255`
- Move using a convenient `0–100 %` interface (`0%` open, `100%` closed)
- Read status, object status and fault codes

## Installation

Install the URCap on your Universal Robots controller first:
- Download the Robotiq URCap from the [Robotiq website](https://robotiq.com/support)
- Install and activate the URCap on your UR controller
- Tested with URCap version `3.27.0` and UR Polyscope version `5.12.4` 

Install from [PyPI](https://pypi.org/project/pyRobotiqUR/) via pip:

```bash
pip install pyRobotiqUR
```

## Usage

Example script:

```python
import time
from pyrobotiqur import RobotiqGripper


UR_IP = "192.168.0.10"   # <-- replace with your UR controller IP


if __name__ == "__main__":
    with RobotiqGripper(UR_IP) as g:
        # Activate gripper (if not already active)
        g.activate()

        print("Opening gripper...")
        g.open(speed=128, force=10)
        time.sleep(3.0)
        print("POS after open:", g.get_position())

        print("Closing gripper...")
        g.close(speed=200, force=200)
        time.sleep(3.0)
        print("POS after close:", g.get_position())

        print("Moving gripper to position 50%...")
        g.move_percent(50, speed=128, force=128)
        time.sleep(3.0)
        print("POS after move_percent:", g.get_position())

        print("Object status:", g.get_object_status())
        print("Fault code:", g.get_fault())
```
traderkit 2025.11.26.2
A Python toolkit for advanced data processing and API interactions
Requires Python: >=3.10
Keywords: api, toolkit


# descartcan

### LLM

#### Step1

llm_config.yaml

```yaml
openai:
  keys:
    - name: "openai_key1"
      api_key: "XXX"
  models:
    gpt4: "gpt-4-0125-preview"
    gpt40: "gpt-4o"

bedrock:
  keys:
    - name: "bedrock"
      api_key: "XXX"
      api_secret: "XXXXX"
  models:
      haiku35: "us.anthropic.claude-3-5-haiku-20241022-v1:0"

```

#### Step2 

load models

```python
from descartcan.llm.factory import LLModelFactory
model_factory = LLModelFactory.from_config(config="llm_config.yaml")
model = model_factory.get_model("openai.gpt4")

# 单轮对话
response = await model.chat(
    question="Show Python",
    system="你是一个编程专家"
)
print(f"回复: {response.content}")
print(f"Token统计: 提示词{response.prompt_tokens}, 生成{response.completion_tokens}, 总计{response.total_tokens}")

# 多轮对话
history = [
    {"role": "user", "content": "Python和Java的区别是什么？"},
    {"role": "assistant", "content": "Python和Java有以下主要区别：..."}
]

response = await model.chat(
    question="哪个更适合初学者？",
    system="你是一个编程专家",
    history=history
)
print(f"多轮对话回复: {response.content}")
```
descartcan 2025.11.26.2
A Python toolkit for advanced data processing and API interactions
Requires Python: >=3.10
Keywords: api, toolkit


# descartcan

### LLM

#### Step1

llm_config.yaml

```yaml
openai:
  keys:
    - name: "openai_key1"
      api_key: "XXX"
  models:
    gpt4: "gpt-4-0125-preview"
    gpt40: "gpt-4o"

bedrock:
  keys:
    - name: "bedrock"
      api_key: "XXX"
      api_secret: "XXXXX"
  models:
      haiku35: "us.anthropic.claude-3-5-haiku-20241022-v1:0"

```

#### Step2 

load models

```python
from descartcan.llm.factory import LLModelFactory
model_factory = LLModelFactory.from_config(config="llm_config.yaml")
model = model_factory.get_model("openai.gpt4")

# 单轮对话
response = await model.chat(
    question="Show Python",
    system="你是一个编程专家"
)
print(f"回复: {response.content}")
print(f"Token统计: 提示词{response.prompt_tokens}, 生成{response.completion_tokens}, 总计{response.total_tokens}")

# 多轮对话
history = [
    {"role": "user", "content": "Python和Java的区别是什么？"},
    {"role": "assistant", "content": "Python和Java有以下主要区别：..."}
]

response = await model.chat(
    question="哪个更适合初学者？",
    system="你是一个编程专家",
    history=history
)
print(f"多轮对话回复: {response.content}")
```