CRYPTONEWS34 commited on
Commit
3d7f973
·
1 Parent(s): 85bca67

Fix matplotlib dir and add httpx to requirements

Browse files
Files changed (1) hide show
  1. app.py +17 -3
app.py CHANGED
@@ -1,5 +1,4 @@
1
  import os
2
-
3
  os.environ["HF_HOME"] = "/tmp/huggingface"
4
  os.environ["MPLCONFIGDIR"] = "/tmp/mplconfig"
5
  os.environ["HF_HOME"] = "/tmp"
@@ -26,6 +25,19 @@ import random
26
  logging.basicConfig(level=logging.INFO)
27
  logger = logging.getLogger(__name__)
28
 
 
 
 
 
 
 
 
 
 
 
 
 
 
29
  # FastAPI app
30
  app = FastAPI()
31
 
@@ -88,7 +100,8 @@ def analyze_ner(req: TextRequest):
88
 
89
  @app.post("/chart")
90
  def generate_chart(req: CoinRequest):
91
- coin_id = req.coin_id.strip().lower()
 
92
  logger.info(f"Generating chart for coin: {coin_id}")
93
  try:
94
  url = f"https://api.coingecko.com/api/v3/coins/{coin_id}/market_chart"
@@ -125,7 +138,8 @@ def generate_news_image(topic: str) -> str:
125
  return file_path
126
 
127
  # ✅ Chart image generator for visual endpoint (reuse)
128
- def generate_chart_image(coin_id: str) -> str:
 
129
  try:
130
  url = f"https://api.coingecko.com/api/v3/coins/{coin_id}/market_chart"
131
  params = {"vs_currency": "usd", "days": "7"}
 
1
  import os
 
2
  os.environ["HF_HOME"] = "/tmp/huggingface"
3
  os.environ["MPLCONFIGDIR"] = "/tmp/mplconfig"
4
  os.environ["HF_HOME"] = "/tmp"
 
25
  logging.basicConfig(level=logging.INFO)
26
  logger = logging.getLogger(__name__)
27
 
28
+ # Coin symbol to CoinGecko ID mapping
29
+ SYMBOL_TO_ID = {
30
+ "btc": "bitcoin",
31
+ "eth": "ethereum",
32
+ "xrp": "ripple",
33
+ "ltc": "litecoin",
34
+ "ada": "cardano",
35
+ "doge": "dogecoin",
36
+ "sol": "solana",
37
+ # Add more if needed
38
+ }
39
+
40
+
41
  # FastAPI app
42
  app = FastAPI()
43
 
 
100
 
101
  @app.post("/chart")
102
  def generate_chart(req: CoinRequest):
103
+ coin_symbol = req.coin_id.strip().lower()
104
+ coin_id = SYMBOL_TO_ID.get(coin_symbol, coin_symbol)
105
  logger.info(f"Generating chart for coin: {coin_id}")
106
  try:
107
  url = f"https://api.coingecko.com/api/v3/coins/{coin_id}/market_chart"
 
138
  return file_path
139
 
140
  # ✅ Chart image generator for visual endpoint (reuse)
141
+ def generate_chart_image(coin_symbol: str) -> str:
142
+ coin_id = SYMBOL_TO_ID.get(coin_symbol.lower(), coin_symbol.lower())
143
  try:
144
  url = f"https://api.coingecko.com/api/v3/coins/{coin_id}/market_chart"
145
  params = {"vs_currency": "usd", "days": "7"}