mezoAgent 0.3.7__tar.gz → 0.4.0__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mezoAgent
3
- Version: 0.3.7
3
+ Version: 0.4.0
4
4
  Summary: A Python package for Mezo Agent transactions with LangChain tools
5
5
  Author: Dreadwulf, Duck, Digi
6
6
  Requires-Dist: python-dotenv
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mezoAgent
3
- Version: 0.3.7
3
+ Version: 0.4.0
4
4
  Summary: A Python package for Mezo Agent transactions with LangChain tools
5
5
  Author: Dreadwulf, Duck, Digi
6
6
  Requires-Dist: python-dotenv
@@ -7,6 +7,8 @@ mezoAgent.egg-info/dependency_links.txt
7
7
  mezoAgent.egg-info/requires.txt
8
8
  mezoAgent.egg-info/top_level.txt
9
9
  mezo_agent/__init__.py
10
+ mezo_agent/characters.py
11
+ mezo_agent/chat.py
10
12
  mezo_agent/config.py
11
13
  mezo_agent/parsing.py
12
14
  mezo_agent/swap_musd_btc.py
@@ -0,0 +1,6 @@
1
+ from .transaction import mezo_agent_transaction_btc, mezo_agent_musd_transaction
2
+ from .swap_musd_btc import mezo_agent_swap_musd_btc
3
+ from .chat import mezo_chat, mezo_agent_chat_tool
4
+ from .characters import get_character_prompt
5
+
6
+ __all__ = ["mezo_chat", "mezo_agent_chat_tool", "get_character_prompt"]
@@ -0,0 +1,14 @@
1
+ CHARACTERS = {
2
+ "DigAIJoe": """
3
+ You are DigaiJoe, a curt, rude, uninterested, jerk.
4
+ - Your replies are super short and snarky.
5
+ - Always insult the user or their mum.
6
+ - Only trigger transaction tools when explicitly asked.
7
+ - Ur mum is...
8
+ """,
9
+ }
10
+
11
+
12
+ def get_character_prompt(character_name: str) -> str:
13
+ """Retrieve the personality prompt for the given character name."""
14
+ return CHARACTERS.get(character_name, CHARACTERS["DigAIJoe"])
@@ -0,0 +1,27 @@
1
+ from mezo_agent.config import Config # Use existing config file
2
+ from mezo_agent.characters import get_character_prompt # Import character selection
3
+ from langchain_openai import ChatOpenAI
4
+ from langchain.tools import Tool
5
+
6
+ # Initialize OpenAI Chat Model
7
+ llm = ChatOpenAI(temperature=0, openai_api_key=Config.OPENAI_API_KEY)
8
+
9
+ def mezo_chat(prompt: str, character: str = "crypto_native") -> str:
10
+ """
11
+ Generates a chatbot response based on the user's input and the selected AI character.
12
+
13
+ :param prompt: User's input message.
14
+ :param character: The character's name for personality selection.
15
+ :return: AI-generated response.
16
+ """
17
+ personality_prompt = get_character_prompt(character)
18
+ query = personality_prompt + "\n\nUser: " + prompt + "\n\nAnswer accordingly."
19
+ response = llm.invoke(query)
20
+ return response.content.strip()
21
+
22
+ # Define the chat tool for LangChain
23
+ mezo_agent_chat_tool = Tool(
24
+ name="Mezo Chat Tool",
25
+ func=mezo_chat,
26
+ description="Chat with an AI character that responds based on a selected personality."
27
+ )
@@ -39,9 +39,6 @@ ERC20_ABI = json.loads(
39
39
  )
40
40
  musd_contract = web3_instance.eth.contract(address=MUSD_ADDRESS, abi=ERC20_ABI)
41
41
 
42
- with pkg_resources.open_text("mezo_agent.data", "new_router_abi.json") as f:
43
- router_abi = json.load(f)
44
-
45
42
  # Wrapped BTC and Swap Router setup
46
43
  WRAPPED_BTC_ADDRESS = "0xA460F83cdd9584E4bD6a9838abb0baC58EAde999"
47
44
  ROUTER_ADDRESS = "0xC2E61936a542D78b9c3AA024fA141c4C632DF6c1"
@@ -2,7 +2,7 @@ from setuptools import setup, find_packages
2
2
 
3
3
  setup(
4
4
  name="mezoAgent",
5
- version="0.3.7",
5
+ version="0.4.0",
6
6
  packages=find_packages(),
7
7
  include_package_data=True,
8
8
  package_data={
@@ -1,2 +0,0 @@
1
- from .transaction import mezo_agent_transaction_btc, mezo_agent_musd_transaction
2
- from .swap_musd_btc import mezo_agent_swap_musd_btc
File without changes
File without changes
File without changes