A Python package for analyzing text input to determine sentiment intensity and polarity toward specific tech CEOs or companies. It provides structured scores and rankings with confidence metrics, ensuring consistent output through pattern matching.
Install the package via pip:
pip install tech_sentiment_analyzer- Sentiment Analysis: Extracts sentiment intensity and polarity for tech-related entities (CEOs, companies).
- Structured Output: Returns standardized scores and confidence metrics.
- Pattern Matching: Ensures consistent output format via regex validation.
- Flexible LLM Integration: Works with default
ChatLLM7or custom LLMs (OpenAI, Anthropic, Google, etc.). - No External Data Access: Processes only user-provided text (no API calls to external sources).
from tech_sentiment_analyzer import tech_sentiment_analyzer
response = tech_sentiment_analyzer(
user_input="Elon Musk's recent tweets show mixed sentiment about SpaceX's Mars mission."
)
print(response)from langchain_openai import ChatOpenAI
from tech_sentiment_analyzer import tech_sentiment_analyzer
llm = ChatOpenAI()
response = tech_sentiment_analyzer(
user_input="Satya Nadella's leadership at Microsoft has been widely praised.",
llm=llm
)
print(response)from langchain_anthropic import ChatAnthropic
from tech_sentiment_analyzer import tech_sentiment_analyzer
llm = ChatAnthropic()
response = tech_sentiment_analyzer(
user_input="Tim Cook's focus on privacy at Apple has sparked debates.",
llm=llm
)
print(response)from langchain_google_genai import ChatGoogleGenerativeAI
from tech_sentiment_analyzer import tech_sentiment_analyzer
llm = ChatGoogleGenerativeAI()
response = tech_sentiment_analyzer(
user_input="Sundar Pichai's vision for Google's AI future is ambitious.",
llm=llm
)
print(response)| Parameter | Type | Description |
|---|---|---|
user_input |
str |
The text input to analyze for sentiment. |
api_key |
Optional[str] |
LLM7 API key (defaults to LLM7_API_KEY environment variable). |
llm |
Optional[BaseChatModel] |
Custom LLM instance (e.g., ChatOpenAI, ChatAnthropic). Defaults to ChatLLM7. |
- Default LLM: Uses
ChatLLM7(fromlangchain_llm7). - Free Tier: Sufficient for most use cases (check LLM7 docs for limits).
- Custom API Key: Pass via
api_keyparameter orLLM7_API_KEYenvironment variable:response = tech_sentiment_analyzer( user_input="Example text...", api_key="your_llm7_api_key" )
The function returns a list of structured sentiment scores (e.g., polarity, intensity, confidence) extracted via regex-matching. Example output:
[
{"entity": "Elon Musk", "polarity": "positive", "intensity": 0.85, "confidence": 0.92},
{"entity": "SpaceX", "polarity": "neutral", "intensity": 0.30, "confidence": 0.88}
]- GitHub Issues: Report bugs/feature requests
- Author: Eugene Evstafev (@chigwell)
- Email: hi@euegne.plus
- License: MIT (see LICENSE)
- LLM7 Integration:
langchain_llm7 - Custom LLMs: LangChain Docs