semvec/pypi-packages huggingface dataset:
asn-check 1.1.3
Check ASNs and metadata for a list of IPs
Requires Python: >=3.7
Keywords: asn-lookup, click, ipv4, ipv6, ripe

ASN Check
=========

[![PyPI version](https://badge.fury.io/py/asn-check.svg)](https://badge.fury.io/py/asn-check)
[![Python](https://img.shields.io/pypi/pyversions/asn_check)](https://img.shields.io/pypi/pyversions/asn_check)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Hatch project](https://img.shields.io/badge/%F0%9F%A5%9A-Hatch-4051b5.svg)](https://github.com/pypa/hatch)

Given a list of IPs the tool returns their AS numbers and names.

Data sources:

  - [ASN ranges IPv4- Thyme APNIC](https://thyme.apnic.net/current/data-raw-table),
  - [ASN ranges IPv6- Thyme APNIC](https://thyme.apnic.net/current/ipv6-raw-table),
  - [AS names - ripe.net](https://ftp.ripe.net/ripe/asnames/asn.txt),
  - [RFC #6890](https://www.rfc-editor.org/rfc/rfc6890.txt).

Features:

  - Caching the data from sources - first run may take a long time,
  - Binary IP network search for high throughput,
  - Returns AS Number, AS Name and a country code for each IP address,
  - Supports both IPv4 and IPv6,
  - Reserved ranges included,
  - Also available as a lib!


Installation
------------

    pip install asn-check


Options
-------

      --input-file FILENAME           Input file with one IPv4 per line  [default:STDIN]
      --output-file FILENAME          Output file - csv, header: ip,asn,name,country_code  [default: STDOUT]
      --log-level [DEBUG|INFO|WARNING|ERROR|CRITICAL] Set logging level.  [default: WARNING]
      --help                          Show this message and exit.


Example CLI
-----------

    $ echo '250.254.147.119
        12.154.0.67
        41.13.122.240
        176.218.30.1078
        128.105.177.84
        85.227.158.196
        74.74.207.74
        2a03:2880:f077::1' | asn-check 

Output:

    ip,asn,name,country_code
    250.254.147.119,rfc6890-t15,Reserved for Future Use,IANA
    12.154.0.67,7018,ATT-INTERNET4,US
    41.13.122.240,29975,VODACOM-,ZA
    128.105.177.84,59,WISC-MADISON-AS,US
    85.227.158.196,2119,TELENOR-NEXTEL Telenor Norge AS,NO
    74.74.207.74,11351,TWC-11351-NORTHEAST,US
    2a03:2880:f077::1,32934,FACEBOOK,US
 

Example Lib Usage
-----------------

    from ipaddress import ip_address
    from asn_check import ASNChecker
    
    checker = ASNChecker() 
    print(checker.search(ip_address("12.154.0.67")))

Output:

    {'ip': IPv4Address('12.154.0.67'), 'asn': '7018', 'name': 'ATT-INTERNET4', 'country_code': 'US'}

Note: If you'd like to use your own data sources, theoretically you can, but they need to follow the same format as the APNIC sources (and the format is not consistent!) - check out the constructor options `asn_routes_url_v4, asn_routes_url_v6, asn_names_url`. I'd recommend sticking to the defaults.
simplemind-chat 0.1.8
A chat interface for AI models using Simplemind.
Requires Python: >=3.11

# Simplechat

A chat interface for AI models using Simplemind.

## Overview

Simplechat is a command-line chat application that provides an interactive interface for conversing with AI models. It features memory persistence, context awareness, and support for multiple AI providers.

## Features

- Support for multiple AI providers (OpenAI, Anthropic, XAI, Ollama)
- Persistent conversation memory and context
- Entity and topic tracking
- User identity management
- Rich markdown rendering
- Command completion
- Clipboard integration

## Installation

Requires Python 3.11 or higher.

```bash
$ pip install simplemind-chat
```

## Usage

Start a chat session:

```bash
$ simplechat [--provider=<provider>] [--model=<model>]
```

API keys should be set in environment variables before running:

```bash
$ export OPENAI_API_KEY="..."
$ export ANTHROPIC_API_KEY="..."
$ export XAI_API_KEY="..."
$ export OLLAMA_API_KEY="..."
```

Options:
- `--provider`: LLM provider to use (openai/anthropic/xai/ollama)
- `--model`: Specific model to use (e.g. o1-preview)

### Available Commands

- `/copy` - Copy last assistant response to clipboard
- `/paste` - Paste clipboard content into chat
- `/help` - Show available commands
- `/exit` - Exit the chat session
- `/clear` - Clear the screen
- `/invoke` - Invoke a specific persona
- `/memories` - Display conversation memories

## Features in Detail

### Memory System
Simplechat includes a sophisticated memory system that:
- Tracks conversation topics and entities
- Maintains user identity across sessions
- Records user preferences and characteristics
- Provides context awareness for more coherent conversations

### Database
Uses SQLite for persistent storage of:
- Conversation entities
- User identity
- Essence markers (user characteristics and preferences)
- Memory markers

### Rich Interface
- Markdown rendering for formatted output
- Command completion
- Status indicators
- Error handling with retries

## Development

The project structure follows a modular design:
- `cli.py`: Command-line interface and main chat loop
- `db.py`: Database operations and schema
- `plugin.py`: Plugin system for memory and context management
- `settings.py`: Configuration and path management

## License

MIT License

## Contributing

Contributions are welcome! Please feel free to submit a Pull Request.
psqache 0.3.0
Fast Caching Library For Python/asyncio
Requires Python: <4.0,>=3.12

# psqache

A blazing-fast Cache Client Library for Python/asyncio powered by PostgreSQL

![PyPI](https://img.shields.io/pypi/v/psqache)
![Python](https://img.shields.io/pypi/pyversions/psqache)
![License](https://img.shields.io/github/license/midnight-train/python-cache)

## The Problem

It's the year 2099, and yes, we're still building high-performance backends. You'd think by now we'd have some universal, one-size-fits-all infrastructure solution, but no.

Instead, we're juggling multiple services: caches, message queues, databases — all to keep our apps blazing fast and reliable.

The typical backend stack looks something like this:

- `Redis` to cache the stuff we hit over and over
- `RabbitMQ` or Kafka for message queues to handle background tasks
- `PostgreSQL` for the real, persistent data

This multi-tool setup works, but it brings baggage:

- Multiple services to set up and maintain
- Complex monitoring and security configurations
- More potential points of failure
- Higher infrastructure costs
- Increased operational complexity

## Enter psqache: The Simplicity Play

What if your friendly, reliable PostgreSQL could handle both persistence AND caching? That's where `psqache` comes in.

`psqache` lets you:

- Use PostgreSQL as a high-performance cache
- Eliminate the need for separate caching services
- Reduce infrastructure complexity and costs
- Maintain high performance at scale
- Keep your stack simple and reliable

## Features

- 🚀 **Blazing Fast**: Optimized for high-throughput caching operations
- 🔄 **Async First**: Built for Python/asyncio with concurrency in mind
- 🛠 **Simple API**: Familiar cache interface (`get`, `set`, `delete`)
- ⏰ **TTL Support**: Automatic key expiration
- 🔍 **JSONB Storage**: Native support for complex data structures
- 🎯 **Type Safe**: Full typing support for modern Python
- 📊 **Monitoring**: Built-in metrics for cache operations

## Quick Start

TODO

## Why PostgreSQL?

PostgreSQL is the perfect foundation for a caching layer because:

- **Reliability**: Built-in durability and consistency guarantees
- **Performance**: Optimized for high-concurrency workloads
- **Flexibility**: Native JSONB support for complex data structures
- **Familiarity**: Uses technology you already know and trust
- **Simplicity**: One less service to maintain and monitor

Under the hood, `psqache` uses:

- Unlogged tables for maximum performance
- Computed expiration fields for automatic cleanup
- Optimized indexes for fast lookups
- Connection pooling for concurrent access

## Performance

TODO

## Configuration

TODO

## Contributing

TODO

## Roadmap

TODO

---

Built with ❤️ by [Midnight Train]
langchain-kipris-tools 0.0.2
kipris api tools for langchain
Requires Python: >=3.9

# langchain_kipris_tools

plus.kipris.or.kr 에서 제공하는 api_key를 이용하여 특허를 검색하는 langchain tool 구현체입니다.
api_key는 본인의 키를 사용해야 합니다.
가입은 plus.kipris.or.kr/portal/main.do 에서 가입 후 사용 가능합니다.

사용 예제

```python
import os
os.environ["KIPRIS_API_KEY"] = ''

from langchain_kipris_tools import LangChainKiprisTools
kipristools = LangChainKiprisTools()
tools = kipristools.get_tools()
```

제공하는 api 목록

| 순번 | api 명칭                     | 설명             | 참조 url                                                                                                       |
| - | ---------------------------- | ---------------- | -------------------------------------------------------------------------------------------------------------- |
|  1| patent_search_tool           | 특허 전체 검색   | [link](https://plus.kipris.or.kr/portal/popup/DBII_000000000000001/SC002/ADI_0000000000002944/apiDescriptionSearch.do) |
|  2| patent_keyword_search_tool   | 특허 키워드 검색 | [link](https://plus.kipris.or.kr/portal/popup/DBII_000000000000001/SC002/ADI_0000000000010162/apiDescriptionSearch.do) |
|  3| patent_applicant_search_tool | 특허 출원인 검색 | [link](https://plus.kipris.or.kr/portal/popup/DBII_000000000000001/SC002/ADI_0000000000015118/apiDescriptionSearch.do) |