ai-query

v1.7.49 suspicious
4.0
Medium Risk

A unified Python SDK for querying AI models from multiple providers

🤖 AI Analysis

Final verdict: SUSPICIOUS

The package has moderate risks associated with credential handling and metadata, which raises some concerns. However, there's no clear evidence of malicious intent.

  • credential risk due to retrieval of AWS region from environment variables
  • metadata risk due to potential low effort or new maintainer account
Per-check LLM notes
  • Network: The presence of network calls is common but may indicate data transmission to external servers, warranting further investigation into the purpose and destination of these calls.
  • Shell: No shell execution patterns detected, suggesting low risk of direct system command execution.
  • Obfuscation: No obfuscation patterns detected.
  • Credentials: The code is attempting to retrieve AWS region from environment variables which could be a legitimate operation for cloud service interactions, but it poses a risk if the package is used in an untrusted environment.
  • Metadata: Low risk due to lack of suspicious elements, but concerns about maintainer history suggest potential low effort or new account.

📦 Package Quality Overall: Low (4.2/10)

○ Low Test Suite 1.0

No test suite detected

  • No test files or test-runner configuration detected
◈ Medium Documentation 5.0

Some documentation present

  • Brief PyPI description (645 chars)
○ Low Contributing Guide 2.0

No contributing guide or governance files found

  • No CONTRIBUTING, CODE_OF_CONDUCT, or governance files found
◈ Medium Type Annotations 5.0

Partial type annotation coverage

  • 333 type-annotated function signatures detected in source
✦ High Multiple Contributors 8.0

Active multi-contributor project

  • 3 unique contributor(s) across 100 commits in Abdulmumin1/ai-query
  • Small but multi-author team (3–4 contributors)

🔬 Heuristic Checks

Outbound Network Calls score 3.0

Found 2 network call pattern(s)

  • e: self._client = httpx.AsyncClient( headers=self.headers, verif
  • er_async_context( httpx.AsyncClient( headers=headers, verify=cer
Code Obfuscation

No obfuscation patterns detected

Shell / Subprocess Execution

No shell execution patterns detected

Credential Harvesting score 5.0

Found 2 credential access pattern(s)

  • region = self.region or os.environ.get("AWS_REGION") or os.environ.get("AWS_DEFAULT_REGION", "us-east-1"
  • .environ.get("AWS_REGION") or os.environ.get("AWS_DEFAULT_REGION", "us-east-1") self._client =
Typosquatting

No typosquatting candidates detected

Registered Email Domain

No author email provided

Suspicious Page Links

All external links appear legitimate

Git Repository History

Repository Abdulmumin1/ai-query appears legitimate

Maintainer History score 6.0

3 maintainer concern(s) found

  • Author name is missing or very short
  • Author "" appears to have only 1 package on PyPI (new or inactive account)
  • Package has no PyPI classifiers (low effort / metadata quality)
Known CVE Vulnerabilities

No known vulnerabilities found in OSV database.

💡 AI App Starter Prompt

Use this prompt to build a project with ai-query
Create a versatile mini-application named 'AIQueryExplorer' using the Python package 'ai-query'. This application will serve as a user-friendly interface for querying AI models from various providers such as OpenAI, Anthropic, and Hugging Face. The goal is to demonstrate the power and flexibility of 'ai-query' by building an application that not only showcases its capabilities but also provides value to users interested in exploring different AI models.

**Application Features:**
1. **Model Query Interface:** Implement a command-line interface (CLI) where users can input queries and select which AI model they wish to query from a predefined list of supported models.
2. **Dynamic Model Selection:** Allow users to dynamically switch between different AI models during a session without restarting the application.
3. **Result Comparison Tool:** Provide a feature to compare the responses from different models side-by-side for a given query, highlighting similarities and differences.
4. **Custom Prompt Templates:** Offer pre-defined prompt templates that users can choose from to refine their queries before sending them to the AI models.
5. **Logging and History:** Maintain a log of all queries and responses for review and analysis purposes.
6. **User Preferences:** Enable users to save their preferences (e.g., default model, preferred prompt template) for a seamless experience across sessions.

**How to Utilize 'ai-query':** 
- Use 'ai-query' to handle the communication with different AI model providers seamlessly. Initialize the SDK at the start of your application and configure it with necessary credentials.
- For each query, use 'ai-query' to send the request to the selected model and retrieve the response.
- Leverage 'ai-query' to manage and switch between different models effortlessly within your application.
- Explore 'ai-query's documentation and features to integrate advanced functionalities like handling errors, retries, and custom headers effectively.

Your task is to design and implement the 'AIQueryExplorer' application following the above guidelines, ensuring it is well-documented and easy to use. Additionally, provide a README file detailing how to install dependencies, run the application, and utilize its features.