2026-06-21 03:19:08 [scrapy.utils.log] INFO: Scrapy 2.12.0 started (bot: ZomatoReviewData) 2026-06-21 03:19:08 [scrapy.utils.log] INFO: Versions: lxml 6.0.2.0, libxml2 2.14.6, cssselect 1.3.0, parsel 1.10.0, w3lib 2.3.1, Twisted 25.5.0, Python 3.12.3 (main, Mar 23 2026, 19:04:32) [GCC 13.3.0], pyOpenSSL 25.1.0 (OpenSSL 3.5.2 5 Aug 2025), cryptography 45.0.6, Platform Linux-6.17.0-1013-aws-x86_64-with-glibc2.39 2026-06-21 03:19:08 [scrapy.addons] INFO: Enabled addons: [] 2026-06-21 03:19:08 [asyncio] DEBUG: Using selector: EpollSelector 2026-06-21 03:19:08 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor 2026-06-21 03:19:08 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop 2026-06-21 03:19:08 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor 2026-06-21 03:19:08 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop 2026-06-21 03:19:08 [scrapy.extensions.telnet] INFO: Telnet Password: 15b1cd6304ad0d1b 2026-06-21 03:19:08 [scrapy.middleware] INFO: Enabled extensions: ['scrapy.extensions.corestats.CoreStats', 'scrapy.extensions.telnet.TelnetConsole', 'scrapy.extensions.memusage.MemoryUsage', 'scrapy.extensions.logstats.LogStats'] 2026-06-21 03:19:08 [scrapy.crawler] INFO: Overridden settings: {'BOT_NAME': 'ZomatoReviewData', 'CONCURRENT_REQUESTS': 32, 'DOWNLOAD_DELAY': 0.3, 'FEED_EXPORT_ENCODING': 'utf-8', 'LOG_FILE': '/home/ubuntu/logs/ZomatoReviewData/zomato_dining_review_data/f47843dc6d1f11f183ed0aab37b1cebd.log', 'NEWSPIDER_MODULE': 'ZomatoReviewData.spiders', 'SPIDER_MODULES': ['ZomatoReviewData.spiders'], 'TWISTED_REACTOR': 'twisted.internet.asyncioreactor.AsyncioSelectorReactor'} 2026-06-21 03:19:08 [scrapy.middleware] INFO: Enabled downloader middlewares: ['scrapy.downloadermiddlewares.offsite.OffsiteMiddleware', 'scrapy.downloadermiddlewares.httpauth.HttpAuthMiddleware', 'scrapy.downloadermiddlewares.downloadtimeout.DownloadTimeoutMiddleware', 'scrapy.downloadermiddlewares.defaultheaders.DefaultHeadersMiddleware', 'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware', 'scrapy.downloadermiddlewares.retry.RetryMiddleware', 'scrapy.downloadermiddlewares.redirect.MetaRefreshMiddleware', 'scrapy.downloadermiddlewares.httpcompression.HttpCompressionMiddleware', 'scrapy.downloadermiddlewares.redirect.RedirectMiddleware', 'scrapy.downloadermiddlewares.cookies.CookiesMiddleware', 'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware', 'scrapy.downloadermiddlewares.stats.DownloaderStats'] 2026-06-21 03:19:08 [scrapy.middleware] INFO: Enabled spider middlewares: ['scrapy.spidermiddlewares.httperror.HttpErrorMiddleware', 'scrapy.spidermiddlewares.referer.RefererMiddleware', 'scrapy.spidermiddlewares.urllength.UrlLengthMiddleware', 'scrapy.spidermiddlewares.depth.DepthMiddleware'] 2026-06-21 03:19:08 [scrapy.middleware] INFO: Enabled item pipelines: ['ZomatoReviewData.pipelines.ZomatoreviewdataPipeline'] 2026-06-21 03:19:08 [scrapy.core.engine] INFO: Spider opened 2026-06-21 03:19:08 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min) 2026-06-21 03:19:08 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023 2026-06-21 03:19:08 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:92: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. 2026-06-21 03:19:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:11 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:11 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:11 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:12 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:12 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:12 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:13 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:13 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:13 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:14 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:14 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:14 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:15 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:15 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:15 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:15 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:16 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:16 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:17 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:17 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:17 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:18 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:18 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:18 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:19 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:19 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:19 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:19 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:20 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:20 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:20 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:20 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:20 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:21 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:22 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:22 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:22 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:22 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:22 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:23 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:23 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:25 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:25 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:25 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:25 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:25 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:25 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:27 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:27 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:28 [py.warnings] WARNING: /home/ubuntu/eggs/ZomatoReviewData/1777988462.egg/ZomatoReviewData/spiders/ZomatoDiningReviewData.py:148: UserWarning: pandas only supports SQLAlchemy connectable (engine/connection) or database string URI or sqlite3 DBAPI2 connection. Other DBAPI2 objects are not tested. Please consider using SQLAlchemy. comp_response = pd.read_sql_query(comp_query, self.conn) 2026-06-21 03:19:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:30 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:32 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:32 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21389292&review_id=473527319> None 2026-06-21 03:19:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:34 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:34 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:34 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:35 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=47458&review_id=473670696> None 2026-06-21 03:19:35 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:36 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20583150&review_id=473639449> None 2026-06-21 03:19:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:36 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20583150&review_id=473639904> None 2026-06-21 03:19:37 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:37 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:37 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:37 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=35658&review_id=473659855> None 2026-06-21 03:19:37 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=35658&review_id=41057823> None 2026-06-21 03:19:37 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:38 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:41 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:41 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:41 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:42 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:42 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:42 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:42 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:43 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:43 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:44 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:44 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:45 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:45 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:45 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:45 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21548102&review_id=473303015> None 2026-06-21 03:19:46 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:46 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:46 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:47 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:47 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:48 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:48 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:48 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:49 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:49 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:49 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:51 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:51 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:51 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:51 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:52 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:52 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:54 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:54 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:54 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:54 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:56 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:56 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:56 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:57 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:59 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:59 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:19:59 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:00 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:00 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:01 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:01 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:01 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=22423992&review_id=473606290> None 2026-06-21 03:20:01 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:01 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:02 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:02 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=22423992&review_id=473235124> None 2026-06-21 03:20:02 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:02 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:03 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:03 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:03 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:03 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:04 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:05 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:05 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:05 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:06 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:06 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:06 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:07 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:07 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:07 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:08 [scrapy.extensions.logstats] INFO: Crawled 164 pages (at 164 pages/min), scraped 9 items (at 9 items/min) 2026-06-21 03:20:09 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:09 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:09 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:10 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:10 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:15 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:15 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:15 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:16 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:22 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:22 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:23 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:23 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:25 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:25 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:25 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:27 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:27 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:27 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:30 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:30 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:30 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:32 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:32 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:34 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:34 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:34 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:35 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:35 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:35 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:37 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:37 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:38 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:38 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:38 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:38 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:40 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:40 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:41 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:41 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:41 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:42 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:42 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:42 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:43 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:43 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:44 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:44 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:44 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:45 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:45 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:46 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:46 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:46 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:46 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:46 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:47 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:47 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:48 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:48 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:49 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:49 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:49 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:49 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:51 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:51 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:51 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:52 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:52 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:54 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:54 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:54 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:54 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:54 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:56 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:56 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:56 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:57 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:57 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:57 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:59 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:59 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:59 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:20:59 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:00 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:01 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:01 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:01 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:01 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:02 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:02 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:03 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:03 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:04 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:04 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:04 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:04 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:05 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:05 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:05 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:06 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:06 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:07 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:07 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:08 [scrapy.extensions.logstats] INFO: Crawled 328 pages (at 164 pages/min), scraped 9 items (at 0 items/min) 2026-06-21 03:21:09 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:09 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:09 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:09 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:10 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:15 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:15 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:15 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:15 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:16 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:16 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:22 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:22 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:22 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:23 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:23 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:25 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:25 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:25 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:27 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:27 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:29 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21019923&review_id=473600702> None 2026-06-21 03:21:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:30 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:30 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:32 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:32 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:32 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:34 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:34 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:35 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:35 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:35 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:35 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=22147659&review_id=473313088> None 2026-06-21 03:21:35 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:37 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:37 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:37 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:37 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:38 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:38 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:40 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:40 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:41 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:41 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:42 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:42 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:42 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:42 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:43 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:43 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:44 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:44 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:44 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:45 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:45 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:45 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:46 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:47 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:47 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:47 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:48 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:48 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:49 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:49 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:49 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:51 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:51 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:52 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:52 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=35658&review_id=473124935> None 2026-06-21 03:21:52 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:52 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:52 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=35658&review_id=473614054> None 2026-06-21 03:21:52 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=35658&review_id=473147611> None 2026-06-21 03:21:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:53 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=34269&review_id=473256783> None 2026-06-21 03:21:53 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=35658&review_id=473625549> None 2026-06-21 03:21:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:54 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:54 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:54 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:54 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=48924&review_id=473599791> None 2026-06-21 03:21:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:55 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20583150&review_id=473287049> None 2026-06-21 03:21:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:56 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:56 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:56 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:56 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:57 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:57 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=18887194&review_id=473639699> None 2026-06-21 03:21:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:58 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=47458&review_id=473625698> None 2026-06-21 03:21:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:59 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:21:59 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21196973&review_id=473149099> None 2026-06-21 03:21:59 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:00 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:00 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:00 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:00 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20627254&review_id=473636990> None 2026-06-21 03:22:00 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:00 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21401321&review_id=473291025> None 2026-06-21 03:22:01 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:01 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21401321&review_id=473520514> None 2026-06-21 03:22:02 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:02 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21401321&review_id=473615425> None 2026-06-21 03:22:02 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:03 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:03 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:03 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:03 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:03 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:04 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:05 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:05 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:05 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:06 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:06 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:06 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:06 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:07 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:07 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:08 [scrapy.extensions.logstats] INFO: Crawled 490 pages (at 162 pages/min), scraped 25 items (at 16 items/min) 2026-06-21 03:22:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:09 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:09 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:10 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:10 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:10 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:10 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:14 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20627254&review_id=473297589> None 2026-06-21 03:22:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:14 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=19978680&review_id=473464184> None 2026-06-21 03:22:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:14 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20670097&review_id=473617707> None 2026-06-21 03:22:15 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:15 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=19978680&review_id=473569672> None 2026-06-21 03:22:15 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:15 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20627254&review_id=473324510> None 2026-06-21 03:22:16 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:16 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20627254&review_id=473310727> None 2026-06-21 03:22:16 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:16 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=18784164&review_id=473189880> None 2026-06-21 03:22:16 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:16 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20627254&review_id=473342508> None 2026-06-21 03:22:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:17 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20627254&review_id=473332688> None 2026-06-21 03:22:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:17 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20627254&review_id=473565515> None 2026-06-21 03:22:17 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20627254&review_id=473613759> None 2026-06-21 03:22:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:19 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=18995602&review_id=473149702> None 2026-06-21 03:22:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:22 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:22 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:22 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:23 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:23 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:25 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:25 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:25 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:27 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:27 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:27 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:30 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:30 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:30 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:30 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:32 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:32 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:32 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:34 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:35 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:35 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:35 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:37 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:37 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:38 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:38 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:40 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:40 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:41 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:41 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:41 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:42 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:42 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:42 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:43 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:43 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:43 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=34157&review_id=473604688> None 2026-06-21 03:22:43 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=34157&review_id=473120074> None 2026-06-21 03:22:43 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:44 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:44 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:44 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:45 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:45 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:45 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:45 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:46 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:46 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:47 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:47 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:47 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21548299&review_id=473635397> None 2026-06-21 03:22:47 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:48 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:48 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:48 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:49 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:49 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21548299&review_id=473189530> None 2026-06-21 03:22:49 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:49 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20631505&review_id=473608051> None 2026-06-21 03:22:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:50 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20823682&review_id=473401219> None 2026-06-21 03:22:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:51 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:51 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20169774&review_id=473431659> None 2026-06-21 03:22:51 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:52 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:52 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:53 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20379354&review_id=473636008> None 2026-06-21 03:22:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:53 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20379354&review_id=473645216> None 2026-06-21 03:22:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:54 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:56 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:57 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:57 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20797495&review_id=473647752> None 2026-06-21 03:22:57 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:57 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:57 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:22:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:00 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:00 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:00 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:00 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:01 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:01 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:01 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:01 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:02 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:03 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:03 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:04 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:04 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:04 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:04 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:05 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:05 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:06 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:06 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:06 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:07 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:07 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:07 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20918603&review_id=473562065> None 2026-06-21 03:23:07 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20454627&review_id=473583678> None 2026-06-21 03:23:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:08 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20020122&review_id=473323635> None 2026-06-21 03:23:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:08 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20020122&review_id=473299744> None 2026-06-21 03:23:08 [scrapy.extensions.logstats] INFO: Crawled 656 pages (at 166 pages/min), scraped 51 items (at 26 items/min) 2026-06-21 03:23:09 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:09 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:09 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20620727&review_id=473085773> None 2026-06-21 03:23:09 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20620727&review_id=473349909> None 2026-06-21 03:23:09 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:09 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:10 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20020122&review_id=473365778> None 2026-06-21 03:23:10 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:10 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:10 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20379354&review_id=473334635> None 2026-06-21 03:23:10 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20379354&review_id=473500751> None 2026-06-21 03:23:10 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:10 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20274785&review_id=473478333> None 2026-06-21 03:23:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:11 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20698004&review_id=473155675> None 2026-06-21 03:23:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:12 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=22243603&review_id=473226135> None 2026-06-21 03:23:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:12 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21155912&review_id=473481820> None 2026-06-21 03:23:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:13 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20797495&review_id=473564991> None 2026-06-21 03:23:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:13 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20400091&review_id=473488777> None 2026-06-21 03:23:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:13 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21155912&review_id=473591040> None 2026-06-21 03:23:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:14 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21155912&review_id=473620517> None 2026-06-21 03:23:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:15 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:15 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20918660&review_id=473337444> None 2026-06-21 03:23:15 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:15 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:15 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20281056&review_id=473298292> None 2026-06-21 03:23:15 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20797534&review_id=473189183> None 2026-06-21 03:23:16 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:16 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:16 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20797534&review_id=473616080> None 2026-06-21 03:23:16 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20809442&review_id=473520756> None 2026-06-21 03:23:16 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:17 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20809442&review_id=473344564> None 2026-06-21 03:23:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:17 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20916935&review_id=473319222> None 2026-06-21 03:23:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:17 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20916935&review_id=473319509> None 2026-06-21 03:23:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:18 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20916935&review_id=473547517> None 2026-06-21 03:23:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:19 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20809442&review_id=473521397> None 2026-06-21 03:23:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:19 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20281056&review_id=473483956> None 2026-06-21 03:23:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20400098&review_id=473274288> None 2026-06-21 03:23:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20281056&review_id=473549337> None 2026-06-21 03:23:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20918656&review_id=473316565> None 2026-06-21 03:23:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20918656&review_id=473587802> None 2026-06-21 03:23:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20918660&review_id=473340063> None 2026-06-21 03:23:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:21 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20918660&review_id=473398633> None 2026-06-21 03:23:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:21 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=22243603&review_id=473258631> None 2026-06-21 03:23:22 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:23 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:23 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:23 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=22243603&review_id=473301631> None 2026-06-21 03:23:23 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=22243603&review_id=473594062> None 2026-06-21 03:23:23 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:23 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:24 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121262&review_id=473309388> None 2026-06-21 03:23:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:24 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=22243603&review_id=473614084> None 2026-06-21 03:23:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:24 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121262&review_id=473318452> None 2026-06-21 03:23:25 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:25 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121262&review_id=473315294> None 2026-06-21 03:23:25 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:26 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121262&review_id=473429843> None 2026-06-21 03:23:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:26 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121262&review_id=473435849> None 2026-06-21 03:23:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:26 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121262&review_id=473443207> None 2026-06-21 03:23:26 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121262&review_id=473453333> None 2026-06-21 03:23:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:26 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121262&review_id=473591659> None 2026-06-21 03:23:27 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:27 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121262&review_id=473613890> None 2026-06-21 03:23:27 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:28 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=22243456&review_id=473292387> None 2026-06-21 03:23:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:28 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=22243456&review_id=473310887> None 2026-06-21 03:23:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:29 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=22243456&review_id=473311343> None 2026-06-21 03:23:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:29 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=22243456&review_id=473433778> None 2026-06-21 03:23:29 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=22243456&review_id=473294095> None 2026-06-21 03:23:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:29 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=22243456&review_id=473508543> None 2026-06-21 03:23:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:29 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=22243456&review_id=473560116> None 2026-06-21 03:23:30 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:30 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20356956&review_id=473172233> None 2026-06-21 03:23:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:31 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20356956&review_id=473252254> None 2026-06-21 03:23:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:31 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20356956&review_id=473264393> None 2026-06-21 03:23:31 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20356956&review_id=473316978> None 2026-06-21 03:23:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:31 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20356956&review_id=473570260> None 2026-06-21 03:23:32 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:32 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20400105&review_id=473301583> None 2026-06-21 03:23:32 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:32 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20356956&review_id=473364251> None 2026-06-21 03:23:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:33 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20400105&review_id=473355845> None 2026-06-21 03:23:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:33 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20400105&review_id=473321401> None 2026-06-21 03:23:34 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:34 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20400105&review_id=473370431> None 2026-06-21 03:23:34 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20400105&review_id=473432534> None 2026-06-21 03:23:34 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:34 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:34 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20400105&review_id=473317663> None 2026-06-21 03:23:34 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20400105&review_id=473500879> None 2026-06-21 03:23:35 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:35 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20400105&review_id=473553481> None 2026-06-21 03:23:35 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:35 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:35 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20400105&review_id=473534406> None 2026-06-21 03:23:35 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:35 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121242&review_id=473285022> None 2026-06-21 03:23:36 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121242&review_id=473264394> None 2026-06-21 03:23:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:36 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121242&review_id=473331463> None 2026-06-21 03:23:37 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:37 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121242&review_id=473360228> None 2026-06-21 03:23:37 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:37 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121242&review_id=473332147> None 2026-06-21 03:23:37 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:38 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121242&review_id=473428350> None 2026-06-21 03:23:38 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:38 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121242&review_id=473492087> None 2026-06-21 03:23:38 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:38 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121242&review_id=473582703> None 2026-06-21 03:23:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:39 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121242&review_id=473607134> None 2026-06-21 03:23:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:39 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121242&review_id=473583397> None 2026-06-21 03:23:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:39 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=21121242&review_id=473609545> None 2026-06-21 03:23:40 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:40 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20400105&review_id=473601682> None 2026-06-21 03:23:40 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:40 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20400105&review_id=473602271> None 2026-06-21 03:23:40 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/login) 2026-06-21 03:23:40 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/merchant-gw/web/reviews/get/details?res_id=20400105&review_id=473610120> None 2026-06-21 03:23:40 [scrapy.core.engine] INFO: Closing spider (finished) 2026-06-21 03:23:41 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-758f529f-418f-4448-a616-7c6395fea2fd', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Great ambience, excellent service, food and drinks are great, Avacado toast, Crunchy Munchy Tempura, Pull apart Garlic bread, Crackling Roll sushi must try items\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:23:41 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:23:41 [httpcore.connection] DEBUG: connect_tcp.started host='bedrock-mantle.ap-south-1.api.aws' port=443 local_address=None timeout=5.0 socket_options=None 2026-06-21 03:23:41 [httpcore.connection] DEBUG: connect_tcp.complete return_value= 2026-06-21 03:23:41 [httpcore.connection] DEBUG: start_tls.started ssl_context= server_hostname='bedrock-mantle.ap-south-1.api.aws' timeout=5.0 2026-06-21 03:23:41 [httpcore.connection] DEBUG: start_tls.complete return_value= 2026-06-21 03:23:41 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:23:41 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:23:41 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:23:41 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:23:41 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:23:44 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:23:44 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'4910'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_xli6ov2xttfbbhqccunp34fh7vezg5tdk4f47tkb5xsgpni7vtjq'), (b'x-request-id', b'req_xli6ov2xttfbbhqccunp34fh7vezg5tdk4f47tkb5xsgpni7vtjq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:23:44 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:23:44 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:23:44 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:23:44 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:23:44 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:23:44 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:23:44 GMT', 'content-type': 'application/json', 'content-length': '4910', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_xli6ov2xttfbbhqccunp34fh7vezg5tdk4f47tkb5xsgpni7vtjq', 'x-request-id': 'req_xli6ov2xttfbbhqccunp34fh7vezg5tdk4f47tkb5xsgpni7vtjq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:23:44 [openai._base_client] DEBUG: request_id: req_xli6ov2xttfbbhqccunp34fh7vezg5tdk4f47tkb5xsgpni7vtjq 2026-06-21 03:23:44 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-484f66a5-8119-4b2d-a6a4-3bb3c20cd18f', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Shakir\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:23:44 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:23:44 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:23:44 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:23:44 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:23:44 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:23:44 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:23:45 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:23:45 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'1624'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_mzpbmvwyabyiu77nva5etum7djqxajwungixorxe2a7dojnvcxha'), (b'x-request-id', b'req_mzpbmvwyabyiu77nva5etum7djqxajwungixorxe2a7dojnvcxha'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:23:45 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:23:45 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:23:45 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:23:45 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:23:45 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:23:45 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:23:45 GMT', 'content-type': 'application/json', 'content-length': '1624', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_mzpbmvwyabyiu77nva5etum7djqxajwungixorxe2a7dojnvcxha', 'x-request-id': 'req_mzpbmvwyabyiu77nva5etum7djqxajwungixorxe2a7dojnvcxha', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:23:45 [openai._base_client] DEBUG: request_id: req_mzpbmvwyabyiu77nva5etum7djqxajwungixorxe2a7dojnvcxha 2026-06-21 03:23:45 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-80501517-90c8-4c01-a1dd-2acd8a0b63f1', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Great service by Ishrab Ali\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:23:45 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:23:45 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:23:45 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:23:45 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:23:45 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:23:45 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:23:46 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:23:46 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2620'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_iba64ixe3tqay7o4xsamdfskdpxas44qwvjfde2mj4dyshm5hcua'), (b'x-request-id', b'req_iba64ixe3tqay7o4xsamdfskdpxas44qwvjfde2mj4dyshm5hcua'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:23:46 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:23:46 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:23:46 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:23:46 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:23:46 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:23:46 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:23:46 GMT', 'content-type': 'application/json', 'content-length': '2620', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_iba64ixe3tqay7o4xsamdfskdpxas44qwvjfde2mj4dyshm5hcua', 'x-request-id': 'req_iba64ixe3tqay7o4xsamdfskdpxas44qwvjfde2mj4dyshm5hcua', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:23:46 [openai._base_client] DEBUG: request_id: req_iba64ixe3tqay7o4xsamdfskdpxas44qwvjfde2mj4dyshm5hcua 2026-06-21 03:23:46 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-cfb58aed-1827-4209-befc-036f544d369e', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Satgaraz\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:23:46 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:23:46 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:23:46 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:23:46 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:23:46 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:23:46 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:23:47 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:23:47 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'1817'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_lzhfsim7gxvwki7g6poab4g3vr7u3y6n4ht4hb4cxlq5b2nardhq'), (b'x-request-id', b'req_lzhfsim7gxvwki7g6poab4g3vr7u3y6n4ht4hb4cxlq5b2nardhq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:23:47 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:23:47 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:23:47 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:23:47 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:23:47 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:23:47 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:23:47 GMT', 'content-type': 'application/json', 'content-length': '1817', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_lzhfsim7gxvwki7g6poab4g3vr7u3y6n4ht4hb4cxlq5b2nardhq', 'x-request-id': 'req_lzhfsim7gxvwki7g6poab4g3vr7u3y6n4ht4hb4cxlq5b2nardhq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:23:47 [openai._base_client] DEBUG: request_id: req_lzhfsim7gxvwki7g6poab4g3vr7u3y6n4ht4hb4cxlq5b2nardhq 2026-06-21 03:23:47 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-9c896226-0495-4ca8-8924-db14ada9fe0a', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Grear place\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:23:47 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:23:47 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:23:47 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:23:47 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:23:47 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:23:47 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:23:49 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:23:49 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2904'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_27xfgz6tsglwd6ltj52bddbwjqfpmy2hwtfhg2pu2bnn2luko3oa'), (b'x-request-id', b'req_27xfgz6tsglwd6ltj52bddbwjqfpmy2hwtfhg2pu2bnn2luko3oa'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:23:49 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:23:49 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:23:49 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:23:49 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:23:49 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:23:49 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:23:49 GMT', 'content-type': 'application/json', 'content-length': '2904', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_27xfgz6tsglwd6ltj52bddbwjqfpmy2hwtfhg2pu2bnn2luko3oa', 'x-request-id': 'req_27xfgz6tsglwd6ltj52bddbwjqfpmy2hwtfhg2pu2bnn2luko3oa', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:23:49 [openai._base_client] DEBUG: request_id: req_27xfgz6tsglwd6ltj52bddbwjqfpmy2hwtfhg2pu2bnn2luko3oa 2026-06-21 03:23:49 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-827a6b1b-0f74-4344-81fa-e2c06d5f4378', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n I use to like this place \nBut don’t know what happened to the food quality \nI just now ordered a chicken tikka masala and it was terrible!\nIt was filled with salt which was not easy to swallow!\nFew times ago also some or other issues happened but I ignored but this one I had to comment on\n Customer Rating:\n 1 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:23:49 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:23:49 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:23:49 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:23:49 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:23:49 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:23:49 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:23:51 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:23:51 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3996'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_yeeibzyzd3qjoaf47ygxgjpnnx5y2mvewo4okppvrspk635a64nq'), (b'x-request-id', b'req_yeeibzyzd3qjoaf47ygxgjpnnx5y2mvewo4okppvrspk635a64nq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:23:51 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:23:51 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:23:51 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:23:51 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:23:51 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:23:51 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:23:51 GMT', 'content-type': 'application/json', 'content-length': '3996', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_yeeibzyzd3qjoaf47ygxgjpnnx5y2mvewo4okppvrspk635a64nq', 'x-request-id': 'req_yeeibzyzd3qjoaf47ygxgjpnnx5y2mvewo4okppvrspk635a64nq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:23:51 [openai._base_client] DEBUG: request_id: req_yeeibzyzd3qjoaf47ygxgjpnnx5y2mvewo4okppvrspk635a64nq 2026-06-21 03:23:51 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-40740a4c-1bf6-4454-854e-54ece1af7ccb', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n The food was exceptional and I loved everything that we ordered. \n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:23:51 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:23:51 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:23:51 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:23:51 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:23:51 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:23:51 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:23:52 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:23:52 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2267'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_2xde5thz6w3x752tev42shkfijmru2g6xzg7u6eaozkdms6kftpq'), (b'x-request-id', b'req_2xde5thz6w3x752tev42shkfijmru2g6xzg7u6eaozkdms6kftpq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:23:52 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:23:52 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:23:52 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:23:52 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:23:52 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:23:52 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:23:52 GMT', 'content-type': 'application/json', 'content-length': '2267', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_2xde5thz6w3x752tev42shkfijmru2g6xzg7u6eaozkdms6kftpq', 'x-request-id': 'req_2xde5thz6w3x752tev42shkfijmru2g6xzg7u6eaozkdms6kftpq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:23:52 [openai._base_client] DEBUG: request_id: req_2xde5thz6w3x752tev42shkfijmru2g6xzg7u6eaozkdms6kftpq 2026-06-21 03:23:52 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-99d00654-b41e-482c-8b0c-5c7d4d2ec67f', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Ram was awesome\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:23:52 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:23:52 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:23:52 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:23:52 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:23:52 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:23:52 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:23:53 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:23:53 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2689'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_3ysfw57q7pwr3vpi3exesox2bcmhsx4zqxabmx5dgxieb3gjsdvq'), (b'x-request-id', b'req_3ysfw57q7pwr3vpi3exesox2bcmhsx4zqxabmx5dgxieb3gjsdvq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:23:53 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:23:53 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:23:53 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:23:53 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:23:53 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:23:53 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:23:53 GMT', 'content-type': 'application/json', 'content-length': '2689', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_3ysfw57q7pwr3vpi3exesox2bcmhsx4zqxabmx5dgxieb3gjsdvq', 'x-request-id': 'req_3ysfw57q7pwr3vpi3exesox2bcmhsx4zqxabmx5dgxieb3gjsdvq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:23:53 [openai._base_client] DEBUG: request_id: req_3ysfw57q7pwr3vpi3exesox2bcmhsx4zqxabmx5dgxieb3gjsdvq 2026-06-21 03:23:53 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-d354d9de-bbed-430f-91c3-d03e123ecda0', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Good Menu and reasonable prices after discounts....food was tasty and service was good\n Customer Rating:\n 4 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:23:53 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:23:53 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:23:53 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:23:53 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:23:53 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:23:53 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:23:55 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:23:55 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3451'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_d7lumafgalvk5ylj4mmgdxlodmjvuvi35jdklvnodkvtrq7s4uua'), (b'x-request-id', b'req_d7lumafgalvk5ylj4mmgdxlodmjvuvi35jdklvnodkvtrq7s4uua'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:23:55 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:23:55 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:23:55 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:23:55 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:23:55 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:23:55 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:23:55 GMT', 'content-type': 'application/json', 'content-length': '3451', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_d7lumafgalvk5ylj4mmgdxlodmjvuvi35jdklvnodkvtrq7s4uua', 'x-request-id': 'req_d7lumafgalvk5ylj4mmgdxlodmjvuvi35jdklvnodkvtrq7s4uua', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:23:55 [openai._base_client] DEBUG: request_id: req_d7lumafgalvk5ylj4mmgdxlodmjvuvi35jdklvnodkvtrq7s4uua 2026-06-21 03:23:55 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-faa226e7-852c-4e00-86db-c2e581ea0b72', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n very good \n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:23:55 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:23:55 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:23:55 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:23:55 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:23:55 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:23:55 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:23:56 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:23:56 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2076'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_rm23gwxt3rtvoeu5mihwfxch2rf6lb3pvn7l4m6h7rwgeya23ouq'), (b'x-request-id', b'req_rm23gwxt3rtvoeu5mihwfxch2rf6lb3pvn7l4m6h7rwgeya23ouq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:23:56 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:23:56 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:23:56 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:23:56 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:23:56 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:23:56 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:23:56 GMT', 'content-type': 'application/json', 'content-length': '2076', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_rm23gwxt3rtvoeu5mihwfxch2rf6lb3pvn7l4m6h7rwgeya23ouq', 'x-request-id': 'req_rm23gwxt3rtvoeu5mihwfxch2rf6lb3pvn7l4m6h7rwgeya23ouq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:23:56 [openai._base_client] DEBUG: request_id: req_rm23gwxt3rtvoeu5mihwfxch2rf6lb3pvn7l4m6h7rwgeya23ouq 2026-06-21 03:23:56 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-91068acb-be69-4df7-bbec-58138264c5e1', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Amazing service, fresh fish and amazing taste... one of the best sea food experiences till date. totally worth every penny \n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:23:56 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:23:56 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:23:56 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:23:56 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:23:56 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:23:56 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:23:58 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:23:58 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3625'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_jx2z7qj4kglonhuccfnafsyg262fg76mtlzta5b36bjnq65htdvq'), (b'x-request-id', b'req_jx2z7qj4kglonhuccfnafsyg262fg76mtlzta5b36bjnq65htdvq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:23:58 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:23:58 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:23:58 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:23:58 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:23:58 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:23:58 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:23:58 GMT', 'content-type': 'application/json', 'content-length': '3625', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_jx2z7qj4kglonhuccfnafsyg262fg76mtlzta5b36bjnq65htdvq', 'x-request-id': 'req_jx2z7qj4kglonhuccfnafsyg262fg76mtlzta5b36bjnq65htdvq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:23:58 [openai._base_client] DEBUG: request_id: req_jx2z7qj4kglonhuccfnafsyg262fg76mtlzta5b36bjnq65htdvq 2026-06-21 03:23:58 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-6702fa56-e13b-4095-a4f7-7df83f9a15a1', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n kishan was an amazing guy \n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:23:58 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:23:58 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:23:58 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:23:58 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:23:58 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:23:58 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:23:59 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:23:59 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2173'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_trd3ovfa3mxwrj4y6d22al4xvay7gg4d3b25b6qdszijdneo46oq'), (b'x-request-id', b'req_trd3ovfa3mxwrj4y6d22al4xvay7gg4d3b25b6qdszijdneo46oq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:23:59 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:23:59 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:23:59 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:23:59 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:23:59 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:23:59 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:23:59 GMT', 'content-type': 'application/json', 'content-length': '2173', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_trd3ovfa3mxwrj4y6d22al4xvay7gg4d3b25b6qdszijdneo46oq', 'x-request-id': 'req_trd3ovfa3mxwrj4y6d22al4xvay7gg4d3b25b6qdszijdneo46oq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:23:59 [openai._base_client] DEBUG: request_id: req_trd3ovfa3mxwrj4y6d22al4xvay7gg4d3b25b6qdszijdneo46oq 2026-06-21 03:23:59 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-5dda089b-a8bc-4bf7-ae12-aac34f278830', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n The food and vibe was really good . We really loved kishan sir who catered us in a very warm and welcoming way.\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:23:59 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:23:59 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:23:59 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:23:59 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:23:59 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:23:59 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:01 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:01 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3268'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_f4qjxmvbkhkq65ydgm3dta5vtx5whca2ennupkoeaibks7cp43wq'), (b'x-request-id', b'req_f4qjxmvbkhkq65ydgm3dta5vtx5whca2ennupkoeaibks7cp43wq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:01 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:01 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:01 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:01 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:01 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:01 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:01 GMT', 'content-type': 'application/json', 'content-length': '3268', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_f4qjxmvbkhkq65ydgm3dta5vtx5whca2ennupkoeaibks7cp43wq', 'x-request-id': 'req_f4qjxmvbkhkq65ydgm3dta5vtx5whca2ennupkoeaibks7cp43wq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:01 [openai._base_client] DEBUG: request_id: req_f4qjxmvbkhkq65ydgm3dta5vtx5whca2ennupkoeaibks7cp43wq 2026-06-21 03:24:02 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-86549329-e24a-49ab-be8f-a8b0c2be2471', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Manish is a good guy\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:02 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:02 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:02 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:02 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:02 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:02 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:02 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:02 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2191'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_q2moynujm5ixe4pxorotdvunlwnyju3ikxtobnpq7bnfg6kmhcta'), (b'x-request-id', b'req_q2moynujm5ixe4pxorotdvunlwnyju3ikxtobnpq7bnfg6kmhcta'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:02 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:02 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:02 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:02 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:02 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:02 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:02 GMT', 'content-type': 'application/json', 'content-length': '2191', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_q2moynujm5ixe4pxorotdvunlwnyju3ikxtobnpq7bnfg6kmhcta', 'x-request-id': 'req_q2moynujm5ixe4pxorotdvunlwnyju3ikxtobnpq7bnfg6kmhcta', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:02 [openai._base_client] DEBUG: request_id: req_q2moynujm5ixe4pxorotdvunlwnyju3ikxtobnpq7bnfg6kmhcta 2026-06-21 03:24:02 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-03bb7f5a-788c-4e0c-9b56-c33af0bd667c', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Starter was nice\nBiryani was too much oily\nExpensive almost double price for each item\n Customer Rating:\n 4 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:02 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:02 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:02 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:02 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:02 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:02 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:05 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:05 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'4342'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_e3br366j6az3bxlvy7gnf4bx4z424eej5q576micfsgpucagdjgq'), (b'x-request-id', b'req_e3br366j6az3bxlvy7gnf4bx4z424eej5q576micfsgpucagdjgq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:05 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:05 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:05 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:05 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:05 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:05 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:05 GMT', 'content-type': 'application/json', 'content-length': '4342', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_e3br366j6az3bxlvy7gnf4bx4z424eej5q576micfsgpucagdjgq', 'x-request-id': 'req_e3br366j6az3bxlvy7gnf4bx4z424eej5q576micfsgpucagdjgq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:05 [openai._base_client] DEBUG: request_id: req_e3br366j6az3bxlvy7gnf4bx4z424eej5q576micfsgpucagdjgq 2026-06-21 03:24:05 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-99f286fe-c223-42d6-a791-60869b81acab', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n kishan thankyou for your best service\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:05 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:05 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:05 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:05 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:05 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:05 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:06 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:06 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2230'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_uigrpfumfkgnxd6l6m2ejsj227rzhyzxpvftfmoix7k2qchgsr7q'), (b'x-request-id', b'req_uigrpfumfkgnxd6l6m2ejsj227rzhyzxpvftfmoix7k2qchgsr7q'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:06 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:06 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:06 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:06 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:06 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:06 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:06 GMT', 'content-type': 'application/json', 'content-length': '2230', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_uigrpfumfkgnxd6l6m2ejsj227rzhyzxpvftfmoix7k2qchgsr7q', 'x-request-id': 'req_uigrpfumfkgnxd6l6m2ejsj227rzhyzxpvftfmoix7k2qchgsr7q', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:06 [openai._base_client] DEBUG: request_id: req_uigrpfumfkgnxd6l6m2ejsj227rzhyzxpvftfmoix7k2qchgsr7q 2026-06-21 03:24:06 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-e085451c-4789-4348-91b7-154ec3938fac', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Aazad\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:06 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:06 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:06 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:06 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:06 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:06 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:07 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:07 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2218'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_jgvsqfc4wu5wtowmjvab73szg3lkjmthimrj3obgl5b7fvk4ce4a'), (b'x-request-id', b'req_jgvsqfc4wu5wtowmjvab73szg3lkjmthimrj3obgl5b7fvk4ce4a'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:07 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:07 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:07 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:07 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:07 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:07 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:07 GMT', 'content-type': 'application/json', 'content-length': '2218', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_jgvsqfc4wu5wtowmjvab73szg3lkjmthimrj3obgl5b7fvk4ce4a', 'x-request-id': 'req_jgvsqfc4wu5wtowmjvab73szg3lkjmthimrj3obgl5b7fvk4ce4a', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:07 [openai._base_client] DEBUG: request_id: req_jgvsqfc4wu5wtowmjvab73szg3lkjmthimrj3obgl5b7fvk4ce4a 2026-06-21 03:24:07 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-ade8f26b-a9e5-42aa-a48f-da4db1c6f602', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n name - sarfaraz \nreview - the food here was very tasty and fulfilling \ndefinitely will visit again \n\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:07 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:07 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:07 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:07 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:07 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:07 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:08 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:08 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3053'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_nmhlcbp74gebazcw4gxvak22g3cqrluaid5lrv5ew6ugqiyj7pha'), (b'x-request-id', b'req_nmhlcbp74gebazcw4gxvak22g3cqrluaid5lrv5ew6ugqiyj7pha'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:08 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:08 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:08 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:08 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:08 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:08 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:08 GMT', 'content-type': 'application/json', 'content-length': '3053', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_nmhlcbp74gebazcw4gxvak22g3cqrluaid5lrv5ew6ugqiyj7pha', 'x-request-id': 'req_nmhlcbp74gebazcw4gxvak22g3cqrluaid5lrv5ew6ugqiyj7pha', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:08 [openai._base_client] DEBUG: request_id: req_nmhlcbp74gebazcw4gxvak22g3cqrluaid5lrv5ew6ugqiyj7pha 2026-06-21 03:24:08 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-9aaddd2f-df00-4c3d-bb4c-cc83386cac54', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Not sure why it is rated above 4. I won\'t recommend this. Below average\n Customer Rating:\n 3 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:08 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:08 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:08 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:08 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:08 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:08 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:10 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:10 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2227'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_i5qkhu76u3wfeu4li4c6kb4zmbnvsvbi6qummajeyltrnecazkiq'), (b'x-request-id', b'req_i5qkhu76u3wfeu4li4c6kb4zmbnvsvbi6qummajeyltrnecazkiq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:10 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:10 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:10 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:10 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:10 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:10 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:10 GMT', 'content-type': 'application/json', 'content-length': '2227', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_i5qkhu76u3wfeu4li4c6kb4zmbnvsvbi6qummajeyltrnecazkiq', 'x-request-id': 'req_i5qkhu76u3wfeu4li4c6kb4zmbnvsvbi6qummajeyltrnecazkiq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:10 [openai._base_client] DEBUG: request_id: req_i5qkhu76u3wfeu4li4c6kb4zmbnvsvbi6qummajeyltrnecazkiq 2026-06-21 03:24:10 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-33151d8b-c80e-439e-bc5a-9a1af9c0b308', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Service is great \nWell managed\nExcellent waitering\nSpecially brother Abdul and \nMr Zakir are owesome\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:10 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:10 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:10 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:10 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:10 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:10 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:11 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:11 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2968'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_u4znmcsds52ult62hepot2cxo5zvmcjgnal5sqv64uiirnshbciq'), (b'x-request-id', b'req_u4znmcsds52ult62hepot2cxo5zvmcjgnal5sqv64uiirnshbciq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:11 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:11 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:11 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:11 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:11 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:11 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:11 GMT', 'content-type': 'application/json', 'content-length': '2968', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_u4znmcsds52ult62hepot2cxo5zvmcjgnal5sqv64uiirnshbciq', 'x-request-id': 'req_u4znmcsds52ult62hepot2cxo5zvmcjgnal5sqv64uiirnshbciq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:11 [openai._base_client] DEBUG: request_id: req_u4znmcsds52ult62hepot2cxo5zvmcjgnal5sqv64uiirnshbciq 2026-06-21 03:24:11 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-8d25c628-a8a5-44d6-9b98-95dc782c2a0f', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n they sell rotten food. fool people for their money. the chicken was smelling. couldnt dare to take a bite. instead of marling it off the availble item, just fooling people for their money and zomato only gave 60rs as refund .\n Customer Rating:\n 1 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:11 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:11 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:11 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:11 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:11 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:11 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:13 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:13 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'4712'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_q6eshhfu4lggusht7hlxwqx6cbbtr3ufkhv3dkl3bivtzmmv6mpa'), (b'x-request-id', b'req_q6eshhfu4lggusht7hlxwqx6cbbtr3ufkhv3dkl3bivtzmmv6mpa'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:13 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:13 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:13 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:13 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:13 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:13 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:13 GMT', 'content-type': 'application/json', 'content-length': '4712', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_q6eshhfu4lggusht7hlxwqx6cbbtr3ufkhv3dkl3bivtzmmv6mpa', 'x-request-id': 'req_q6eshhfu4lggusht7hlxwqx6cbbtr3ufkhv3dkl3bivtzmmv6mpa', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:13 [openai._base_client] DEBUG: request_id: req_q6eshhfu4lggusht7hlxwqx6cbbtr3ufkhv3dkl3bivtzmmv6mpa 2026-06-21 03:24:13 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-9122a408-29ac-4920-8f13-cf3008c2ffd9', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n rehman\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:13 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:13 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:13 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:13 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:13 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:13 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:14 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:14 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'1897'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_rede7f77h4ohkqa3bri3slvxbnf7n2utbmzx5awvnnai2mbregdq'), (b'x-request-id', b'req_rede7f77h4ohkqa3bri3slvxbnf7n2utbmzx5awvnnai2mbregdq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:14 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:14 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:14 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:14 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:14 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:14 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:14 GMT', 'content-type': 'application/json', 'content-length': '1897', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_rede7f77h4ohkqa3bri3slvxbnf7n2utbmzx5awvnnai2mbregdq', 'x-request-id': 'req_rede7f77h4ohkqa3bri3slvxbnf7n2utbmzx5awvnnai2mbregdq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:14 [openai._base_client] DEBUG: request_id: req_rede7f77h4ohkqa3bri3slvxbnf7n2utbmzx5awvnnai2mbregdq 2026-06-21 03:24:14 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-5e49c20c-4f77-46ec-8f43-ce86beb13574', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Ahmed Ali offered an excellent service. was very polite and sober. \nfood was awesome\n \n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:14 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:14 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:14 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:14 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:14 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:14 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:16 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:16 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3682'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_c5fjlg3t5hrmfrggl3jiudf3bd5yvklrqbeyxewu7m3umm775aoa'), (b'x-request-id', b'req_c5fjlg3t5hrmfrggl3jiudf3bd5yvklrqbeyxewu7m3umm775aoa'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:16 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:16 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:16 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:16 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:16 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:16 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:16 GMT', 'content-type': 'application/json', 'content-length': '3682', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_c5fjlg3t5hrmfrggl3jiudf3bd5yvklrqbeyxewu7m3umm775aoa', 'x-request-id': 'req_c5fjlg3t5hrmfrggl3jiudf3bd5yvklrqbeyxewu7m3umm775aoa', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:16 [openai._base_client] DEBUG: request_id: req_c5fjlg3t5hrmfrggl3jiudf3bd5yvklrqbeyxewu7m3umm775aoa 2026-06-21 03:24:16 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-a917dc60-5855-41bc-89d9-85c253542183', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n amazing and delicious food! great service by Mr. Ahmad Ali\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:16 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:16 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:16 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:16 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:16 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:16 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:18 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:18 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'4059'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_ghfhk3gpfr7d7rga2ttlrydrq46xvjiydwbsxdrgjulvpa26n7ia'), (b'x-request-id', b'req_ghfhk3gpfr7d7rga2ttlrydrq46xvjiydwbsxdrgjulvpa26n7ia'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:18 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:18 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:18 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:18 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:18 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:18 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:18 GMT', 'content-type': 'application/json', 'content-length': '4059', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_ghfhk3gpfr7d7rga2ttlrydrq46xvjiydwbsxdrgjulvpa26n7ia', 'x-request-id': 'req_ghfhk3gpfr7d7rga2ttlrydrq46xvjiydwbsxdrgjulvpa26n7ia', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:18 [openai._base_client] DEBUG: request_id: req_ghfhk3gpfr7d7rga2ttlrydrq46xvjiydwbsxdrgjulvpa26n7ia 2026-06-21 03:24:18 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-4d11cc3e-5dd8-4244-b290-b3b4debcd4c4', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Good service\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:18 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:18 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:18 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:18 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:18 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:18 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:19 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:19 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2989'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_ycglxifapre4vvupjl7mttncf2aouf3xhqlyd7ox3htsa5bioqhq'), (b'x-request-id', b'req_ycglxifapre4vvupjl7mttncf2aouf3xhqlyd7ox3htsa5bioqhq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:19 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:19 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:19 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:19 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:19 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:19 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:19 GMT', 'content-type': 'application/json', 'content-length': '2989', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_ycglxifapre4vvupjl7mttncf2aouf3xhqlyd7ox3htsa5bioqhq', 'x-request-id': 'req_ycglxifapre4vvupjl7mttncf2aouf3xhqlyd7ox3htsa5bioqhq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:19 [openai._base_client] DEBUG: request_id: req_ycglxifapre4vvupjl7mttncf2aouf3xhqlyd7ox3htsa5bioqhq 2026-06-21 03:24:19 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-590f5d81-1bde-4415-be91-440cd8b06330', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Rehman\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:19 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:19 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:19 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:19 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:19 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:19 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:20 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:20 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'1401'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_j76rp4dvwailsxpaiqwgkboiz4x4qvrhgjt4dj56wy2ijklkp22q'), (b'x-request-id', b'req_j76rp4dvwailsxpaiqwgkboiz4x4qvrhgjt4dj56wy2ijklkp22q'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:20 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:20 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:20 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:20 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:20 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:20 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:20 GMT', 'content-type': 'application/json', 'content-length': '1401', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_j76rp4dvwailsxpaiqwgkboiz4x4qvrhgjt4dj56wy2ijklkp22q', 'x-request-id': 'req_j76rp4dvwailsxpaiqwgkboiz4x4qvrhgjt4dj56wy2ijklkp22q', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:20 [openai._base_client] DEBUG: request_id: req_j76rp4dvwailsxpaiqwgkboiz4x4qvrhgjt4dj56wy2ijklkp22q 2026-06-21 03:24:20 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-758ef39c-d946-4f87-a3bc-4fd4efb15cf4', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n worst management, didn\'t allow us to sit more than 2 hours, they asked us to pay 20000 for extending the sitting. this is slavery..... terrible \n Customer Rating:\n 1 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:20 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:20 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:20 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:20 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:20 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:20 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:22 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:22 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3319'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_sbgiq7kn2xu46x5wwuemhatwor6r57q6ik6ilea6mqwfjbvo7rda'), (b'x-request-id', b'req_sbgiq7kn2xu46x5wwuemhatwor6r57q6ik6ilea6mqwfjbvo7rda'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:22 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:22 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:22 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:22 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:22 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:22 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:22 GMT', 'content-type': 'application/json', 'content-length': '3319', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_sbgiq7kn2xu46x5wwuemhatwor6r57q6ik6ilea6mqwfjbvo7rda', 'x-request-id': 'req_sbgiq7kn2xu46x5wwuemhatwor6r57q6ik6ilea6mqwfjbvo7rda', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:22 [openai._base_client] DEBUG: request_id: req_sbgiq7kn2xu46x5wwuemhatwor6r57q6ik6ilea6mqwfjbvo7rda 2026-06-21 03:24:22 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-82f0bdc5-ef01-40df-b642-d987fdc2a833', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n it\'s a good place to have a dinner with friend and family\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:22 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:22 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:22 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:22 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:22 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:22 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:23 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:23 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2858'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_azxoa4tcuxezxolkheg4ra5c242hkpm7akio5bz2hgwlwby2e2oa'), (b'x-request-id', b'req_azxoa4tcuxezxolkheg4ra5c242hkpm7akio5bz2hgwlwby2e2oa'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:23 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:23 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:23 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:23 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:23 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:23 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:23 GMT', 'content-type': 'application/json', 'content-length': '2858', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_azxoa4tcuxezxolkheg4ra5c242hkpm7akio5bz2hgwlwby2e2oa', 'x-request-id': 'req_azxoa4tcuxezxolkheg4ra5c242hkpm7akio5bz2hgwlwby2e2oa', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:23 [openai._base_client] DEBUG: request_id: req_azxoa4tcuxezxolkheg4ra5c242hkpm7akio5bz2hgwlwby2e2oa 2026-06-21 03:24:23 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-582ae35f-4a0e-47b2-bde2-963f09639191', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n we were forced to leave , worst hospitality, will never go there , and will tell all my friends not to go there \n Customer Rating:\n 1 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:23 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:23 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:23 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:23 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:23 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:23 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:24 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:24 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2623'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_x6pd7rucztqiv4yiz7hxfyzaw2utgutarbmey7awpfntnoo4sfvq'), (b'x-request-id', b'req_x6pd7rucztqiv4yiz7hxfyzaw2utgutarbmey7awpfntnoo4sfvq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:24 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:24 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:24 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:24 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:24 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:24 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:24 GMT', 'content-type': 'application/json', 'content-length': '2623', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_x6pd7rucztqiv4yiz7hxfyzaw2utgutarbmey7awpfntnoo4sfvq', 'x-request-id': 'req_x6pd7rucztqiv4yiz7hxfyzaw2utgutarbmey7awpfntnoo4sfvq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:24 [openai._base_client] DEBUG: request_id: req_x6pd7rucztqiv4yiz7hxfyzaw2utgutarbmey7awpfntnoo4sfvq 2026-06-21 03:24:24 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-54ffa561-bd72-4abe-a8bd-346580988683', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Rehman\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:24 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:24 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:24 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:24 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:24 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:24 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:25 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:25 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'1603'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_odszthg6rsqtbiygxmf2ygkssiuuq7i6lzcs37wvjnb2chenimsq'), (b'x-request-id', b'req_odszthg6rsqtbiygxmf2ygkssiuuq7i6lzcs37wvjnb2chenimsq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:25 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:25 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:25 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:25 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:25 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:25 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:25 GMT', 'content-type': 'application/json', 'content-length': '1603', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_odszthg6rsqtbiygxmf2ygkssiuuq7i6lzcs37wvjnb2chenimsq', 'x-request-id': 'req_odszthg6rsqtbiygxmf2ygkssiuuq7i6lzcs37wvjnb2chenimsq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:25 [openai._base_client] DEBUG: request_id: req_odszthg6rsqtbiygxmf2ygkssiuuq7i6lzcs37wvjnb2chenimsq 2026-06-21 03:24:25 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-945951fd-afda-4798-88f1-4039e560fb1f', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Great service by Rehman and loved the ambience and food\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:25 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:25 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:25 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:25 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:25 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:25 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:27 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:27 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'4016'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_vlha3yemhh7nykll2u2udewwqor745xg3fllc2pn6xnxuddmkwsq'), (b'x-request-id', b'req_vlha3yemhh7nykll2u2udewwqor745xg3fllc2pn6xnxuddmkwsq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:27 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:27 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:27 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:27 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:27 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:27 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:27 GMT', 'content-type': 'application/json', 'content-length': '4016', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_vlha3yemhh7nykll2u2udewwqor745xg3fllc2pn6xnxuddmkwsq', 'x-request-id': 'req_vlha3yemhh7nykll2u2udewwqor745xg3fllc2pn6xnxuddmkwsq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:27 [openai._base_client] DEBUG: request_id: req_vlha3yemhh7nykll2u2udewwqor745xg3fllc2pn6xnxuddmkwsq 2026-06-21 03:24:27 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-f13118ab-99a7-474d-a006-cfa429461b73', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Right from entry to exit it was an unpleasant experience. There was rudeness written all over . The AC is not effective, the place is extremely loud even for a pub club and there hardly any one to wait on you .\n Customer Rating:\n 2 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:27 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:27 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:27 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:27 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:27 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:27 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:29 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:29 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3879'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_tlgt5ligoj4vito2waeoxgrphtobtuger2hxqdgajqigp6fpjhnq'), (b'x-request-id', b'req_tlgt5ligoj4vito2waeoxgrphtobtuger2hxqdgajqigp6fpjhnq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:29 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:29 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:29 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:29 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:29 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:29 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:29 GMT', 'content-type': 'application/json', 'content-length': '3879', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_tlgt5ligoj4vito2waeoxgrphtobtuger2hxqdgajqigp6fpjhnq', 'x-request-id': 'req_tlgt5ligoj4vito2waeoxgrphtobtuger2hxqdgajqigp6fpjhnq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:29 [openai._base_client] DEBUG: request_id: req_tlgt5ligoj4vito2waeoxgrphtobtuger2hxqdgajqigp6fpjhnq 2026-06-21 03:24:29 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-23286698-c493-4cde-bcaa-db540d4dc459', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Rehman and Vaibhav assisted us and it was great.\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:29 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:29 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:29 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:29 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:29 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:29 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:30 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:30 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2521'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_dyhajzcflun7zay2rivvgq7afetihzt66ahe3d3gpghuazswwnha'), (b'x-request-id', b'req_dyhajzcflun7zay2rivvgq7afetihzt66ahe3d3gpghuazswwnha'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:30 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:30 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:30 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:30 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:30 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:30 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:30 GMT', 'content-type': 'application/json', 'content-length': '2521', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_dyhajzcflun7zay2rivvgq7afetihzt66ahe3d3gpghuazswwnha', 'x-request-id': 'req_dyhajzcflun7zay2rivvgq7afetihzt66ahe3d3gpghuazswwnha', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:30 [openai._base_client] DEBUG: request_id: req_dyhajzcflun7zay2rivvgq7afetihzt66ahe3d3gpghuazswwnha 2026-06-21 03:24:30 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-47d2b256-1201-453a-959b-4d745e4fc0fd', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Rehman\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:30 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:30 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:30 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:30 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:30 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:30 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:31 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:31 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'1593'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_aaqqpdsyaq4zelso3rerxcxo7y7f73utbclsvobxyozgcuhklajq'), (b'x-request-id', b'req_aaqqpdsyaq4zelso3rerxcxo7y7f73utbclsvobxyozgcuhklajq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:31 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:31 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:31 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:31 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:31 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:31 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:31 GMT', 'content-type': 'application/json', 'content-length': '1593', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_aaqqpdsyaq4zelso3rerxcxo7y7f73utbclsvobxyozgcuhklajq', 'x-request-id': 'req_aaqqpdsyaq4zelso3rerxcxo7y7f73utbclsvobxyozgcuhklajq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:31 [openai._base_client] DEBUG: request_id: req_aaqqpdsyaq4zelso3rerxcxo7y7f73utbclsvobxyozgcuhklajq 2026-06-21 03:24:31 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-eacc5f14-ffa3-429d-81dd-e8d511f07d55', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n awesome experience. nice music and food \n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:31 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:31 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:31 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:31 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:31 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:31 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:32 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:32 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2892'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_htbdsmfqkfkgkfbtmyxbizzuvun45bydbflonpkyd4vbzuukcpga'), (b'x-request-id', b'req_htbdsmfqkfkgkfbtmyxbizzuvun45bydbflonpkyd4vbzuukcpga'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:32 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:32 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:32 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:32 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:32 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:32 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:32 GMT', 'content-type': 'application/json', 'content-length': '2892', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_htbdsmfqkfkgkfbtmyxbizzuvun45bydbflonpkyd4vbzuukcpga', 'x-request-id': 'req_htbdsmfqkfkgkfbtmyxbizzuvun45bydbflonpkyd4vbzuukcpga', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:32 [openai._base_client] DEBUG: request_id: req_htbdsmfqkfkgkfbtmyxbizzuvun45bydbflonpkyd4vbzuukcpga 2026-06-21 03:24:32 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-2965d9d9-1b77-4025-b688-7dc165261634', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Great food great vibe\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:32 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:32 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:32 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:32 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:32 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:32 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:34 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:34 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2854'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_w57n662s7hc3u7lq5a57uk446timv4kkteji7pa657lxalqntbia'), (b'x-request-id', b'req_w57n662s7hc3u7lq5a57uk446timv4kkteji7pa657lxalqntbia'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:34 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:34 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:34 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:34 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:34 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:34 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:34 GMT', 'content-type': 'application/json', 'content-length': '2854', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_w57n662s7hc3u7lq5a57uk446timv4kkteji7pa657lxalqntbia', 'x-request-id': 'req_w57n662s7hc3u7lq5a57uk446timv4kkteji7pa657lxalqntbia', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:34 [openai._base_client] DEBUG: request_id: req_w57n662s7hc3u7lq5a57uk446timv4kkteji7pa657lxalqntbia 2026-06-21 03:24:34 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-9a1c44b7-9839-4a43-bf43-e9db0f5e7758', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n The place & the staff is super horrible. The staff if super disgusting & does not bother if us as guests are comfortable or no! They do not give a shit as a girl if in a club we are comfortable or no! Horrible & totally waste . The party totally sucks!!!\n Customer Rating:\n 1 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:34 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:34 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:34 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:34 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:34 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:34 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:36 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:36 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3797'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_5nr2ha4xj27lnhjw3dhevs66qlkjfecgtvmscqouw3pnlx6rl6jq'), (b'x-request-id', b'req_5nr2ha4xj27lnhjw3dhevs66qlkjfecgtvmscqouw3pnlx6rl6jq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:36 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:36 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:36 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:36 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:36 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:36 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:36 GMT', 'content-type': 'application/json', 'content-length': '3797', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_5nr2ha4xj27lnhjw3dhevs66qlkjfecgtvmscqouw3pnlx6rl6jq', 'x-request-id': 'req_5nr2ha4xj27lnhjw3dhevs66qlkjfecgtvmscqouw3pnlx6rl6jq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:36 [openai._base_client] DEBUG: request_id: req_5nr2ha4xj27lnhjw3dhevs66qlkjfecgtvmscqouw3pnlx6rl6jq 2026-06-21 03:24:36 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-bde7aaa8-effa-49d0-8700-f8017c15ba6b', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Have always ordered food from 5 Spice and after very long had come in for dining and thoroughly enjoyed. A big thank you to Mr. Arjun for excellent service and to the chefs for the wonderful food\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:36 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:36 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:36 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:36 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:36 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:36 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:37 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:37 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3080'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_ij6t6kgntdkjqgdae22xwln4rqizryi3s67bkr4wcuqin25cyyza'), (b'x-request-id', b'req_ij6t6kgntdkjqgdae22xwln4rqizryi3s67bkr4wcuqin25cyyza'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:37 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:37 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:37 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:37 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:37 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:37 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:37 GMT', 'content-type': 'application/json', 'content-length': '3080', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_ij6t6kgntdkjqgdae22xwln4rqizryi3s67bkr4wcuqin25cyyza', 'x-request-id': 'req_ij6t6kgntdkjqgdae22xwln4rqizryi3s67bkr4wcuqin25cyyza', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:37 [openai._base_client] DEBUG: request_id: req_ij6t6kgntdkjqgdae22xwln4rqizryi3s67bkr4wcuqin25cyyza 2026-06-21 03:24:37 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-6f151ce7-0570-4a1a-928a-c235191cbb27', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Nice authentic taste\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:37 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:37 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:37 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:37 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:37 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:37 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:38 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:38 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2071'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_4cl4fzlhj56ckimvrwxvigi2vjmdxzrbr4gclsaip2ile4etal7q'), (b'x-request-id', b'req_4cl4fzlhj56ckimvrwxvigi2vjmdxzrbr4gclsaip2ile4etal7q'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:38 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:38 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:38 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:38 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:38 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:38 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:38 GMT', 'content-type': 'application/json', 'content-length': '2071', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_4cl4fzlhj56ckimvrwxvigi2vjmdxzrbr4gclsaip2ile4etal7q', 'x-request-id': 'req_4cl4fzlhj56ckimvrwxvigi2vjmdxzrbr4gclsaip2ile4etal7q', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:38 [openai._base_client] DEBUG: request_id: req_4cl4fzlhj56ckimvrwxvigi2vjmdxzrbr4gclsaip2ile4etal7q 2026-06-21 03:24:38 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-ea41d413-6692-4a93-9f37-74c92d30c5a3', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Visited Bekal House at Times Square, Sakinaka and had a wonderful experience. The restaurant beautifully captures the essence of coastal South India with its elegant interiors, warm lighting, and unique brass bell décor that instantly sets the mood.\n\nWe started with the Jackfruit Cutlet, Thecha Pesto Paneer Tikka, and Paneer House Fried. The Jackfruit Cutlet was crisp and flavorful, while the Thecha Pesto Paneer Tikka offered a unique fusion of flavors and was the standout among the starters.\n\nFor drinks, we tried the Southern Mogu Mogu, Tropical Tornado, and Dakshina Rose. All were refreshing, with Dakshina Rose being our favorite.\n\nThe mains were equally impressive. The Veg Korma paired perfectly with the soft Appam, delicate Neer Dosa, and flaky Malabar Parotta. The Veg Biryani was aromatic and well-balanced, making for a wholesome meal.\n\nTo end the feast, we indulged in Mysore Pak and Gadbad Ice Cream. The Mysore Pak was rich and melt-in-the-mouth, while the Gadbad Ice Cream was a delightful and refreshing finish.\n\nThe food quality, presentation, ambiance, and hospitality were all on point. A great place to enjoy authentic coastal flavors in Mumbai. Highly recommended.\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:38 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:38 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:38 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:38 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:38 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:38 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:42 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:42 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'7231'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_j4ll27xtppxjnst6u43t7jjfk23vuxj7a4z2hxools2txuuf7qxa'), (b'x-request-id', b'req_j4ll27xtppxjnst6u43t7jjfk23vuxj7a4z2hxools2txuuf7qxa'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:42 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:42 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:42 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:42 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:42 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:42 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:42 GMT', 'content-type': 'application/json', 'content-length': '7231', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_j4ll27xtppxjnst6u43t7jjfk23vuxj7a4z2hxools2txuuf7qxa', 'x-request-id': 'req_j4ll27xtppxjnst6u43t7jjfk23vuxj7a4z2hxools2txuuf7qxa', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:42 [openai._base_client] DEBUG: request_id: req_j4ll27xtppxjnst6u43t7jjfk23vuxj7a4z2hxools2txuuf7qxa 2026-06-21 03:24:42 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-42fdf56d-4879-4097-b678-0c940ac30b90', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Visited Bakel House at Times Square, Andheri East, and had a wonderful dining experience. \nThe Chicken Chilli Cheese Naan Bombs were cheesy and flavorful, while the Jackfruit Cutlet was perfectly crisp. The Benne Masala Dosa and Neer Dosa with Chicken Ghee Roast were excellent, especially for those who enjoy South Indian flavors.\nThe Mongolian Chicken Urval was another highlight with its rich taste and spices.\n\nThe mocktails — Dakshin Rose, Southern Mogu Mogu, and Tropical Orange — were refreshing and well-balanced. \nThe overloaded Gadbad dessert was the perfect ending to the meal. Great ambience, good service, and an interesting menu make this place worth visiting.\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:42 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:42 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:42 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:42 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:42 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:42 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:46 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:46 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'6609'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_zmwrx6mo5f7dallpvkeqhihspmywwxanxhgw6gqpo4a32icapp2a'), (b'x-request-id', b'req_zmwrx6mo5f7dallpvkeqhihspmywwxanxhgw6gqpo4a32icapp2a'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:46 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:46 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:46 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:46 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:46 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:46 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:46 GMT', 'content-type': 'application/json', 'content-length': '6609', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_zmwrx6mo5f7dallpvkeqhihspmywwxanxhgw6gqpo4a32icapp2a', 'x-request-id': 'req_zmwrx6mo5f7dallpvkeqhihspmywwxanxhgw6gqpo4a32icapp2a', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:46 [openai._base_client] DEBUG: request_id: req_zmwrx6mo5f7dallpvkeqhihspmywwxanxhgw6gqpo4a32icapp2a 2026-06-21 03:24:46 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-8d5fa4e3-2a9f-4a39-b1db-6d112b1cdc45', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n extremely expensive . had to wait for 30 mins even after booking. would rather avoid\n Customer Rating:\n 1 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:46 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:46 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:46 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:46 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:46 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:46 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:48 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:48 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'4295'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_kwxehq3dkx6hqfmaegoezlzf3ec3veovho3hkv2hmfpajzkrxtcq'), (b'x-request-id', b'req_kwxehq3dkx6hqfmaegoezlzf3ec3veovho3hkv2hmfpajzkrxtcq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:48 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:48 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:48 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:48 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:48 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:48 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:48 GMT', 'content-type': 'application/json', 'content-length': '4295', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_kwxehq3dkx6hqfmaegoezlzf3ec3veovho3hkv2hmfpajzkrxtcq', 'x-request-id': 'req_kwxehq3dkx6hqfmaegoezlzf3ec3veovho3hkv2hmfpajzkrxtcq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:48 [openai._base_client] DEBUG: request_id: req_kwxehq3dkx6hqfmaegoezlzf3ec3veovho3hkv2hmfpajzkrxtcq 2026-06-21 03:24:48 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-0d3685e0-e093-438a-87cd-78e69a9461a9', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Good selection of food options and the interiors are tastefully done. Highly recommended for a lunch outing.\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:48 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:48 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:48 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:48 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:48 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:48 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:50 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:50 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3653'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_xiicus36e5vo4yjfk466l72p7fqdkrveow6vg7xulpqq4kjsalma'), (b'x-request-id', b'req_xiicus36e5vo4yjfk466l72p7fqdkrveow6vg7xulpqq4kjsalma'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:50 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:50 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:50 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:50 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:50 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:50 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:50 GMT', 'content-type': 'application/json', 'content-length': '3653', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_xiicus36e5vo4yjfk466l72p7fqdkrveow6vg7xulpqq4kjsalma', 'x-request-id': 'req_xiicus36e5vo4yjfk466l72p7fqdkrveow6vg7xulpqq4kjsalma', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:50 [openai._base_client] DEBUG: request_id: req_xiicus36e5vo4yjfk466l72p7fqdkrveow6vg7xulpqq4kjsalma 2026-06-21 03:24:50 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-a5925063-bcf0-4f5b-bdf4-bacf1729afa9', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Great food, lovely ambience, and excellent service. Special thanks to Pratiksha, who was extremely supportive, attentive, and friendly throughout our visit.\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:50 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:50 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:50 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:50 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:50 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:50 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:53 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:53 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'5023'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_sm5pftl2q6eshn3qgnoqdi7uytee27a7xwxl3sj3xbvc5znia4ua'), (b'x-request-id', b'req_sm5pftl2q6eshn3qgnoqdi7uytee27a7xwxl3sj3xbvc5znia4ua'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:53 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:53 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:53 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:53 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:53 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:53 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:53 GMT', 'content-type': 'application/json', 'content-length': '5023', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_sm5pftl2q6eshn3qgnoqdi7uytee27a7xwxl3sj3xbvc5znia4ua', 'x-request-id': 'req_sm5pftl2q6eshn3qgnoqdi7uytee27a7xwxl3sj3xbvc5znia4ua', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:53 [openai._base_client] DEBUG: request_id: req_sm5pftl2q6eshn3qgnoqdi7uytee27a7xwxl3sj3xbvc5znia4ua 2026-06-21 03:24:53 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-584c8ac0-84f7-4441-b60b-5948030ab7f3', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Service by Vaibhav was very 👍🏻😊 Overall vibe and food is very good. Good for birthday parties and get together\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:53 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:53 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:53 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:53 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:53 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:53 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:55 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:55 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2776'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_erzftqrgm7s6jjdb3isbrths777bbkcbctbd7l4uq4t7bdz5covq'), (b'x-request-id', b'req_erzftqrgm7s6jjdb3isbrths777bbkcbctbd7l4uq4t7bdz5covq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:55 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:55 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:55 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:55 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:55 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:55 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:55 GMT', 'content-type': 'application/json', 'content-length': '2776', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_erzftqrgm7s6jjdb3isbrths777bbkcbctbd7l4uq4t7bdz5covq', 'x-request-id': 'req_erzftqrgm7s6jjdb3isbrths777bbkcbctbd7l4uq4t7bdz5covq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:55 [openai._base_client] DEBUG: request_id: req_erzftqrgm7s6jjdb3isbrths777bbkcbctbd7l4uq4t7bdz5covq 2026-06-21 03:24:55 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-6e5888e6-a50d-4148-9868-d37627267fc1', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Vaibhav offered amazing services.. food was very yummy. The DJ was super amazing\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:55 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:55 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:55 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:55 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:55 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:55 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:57 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:57 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3734'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_bkti7zlhgi2qwih4j6vzaufgany3jmzzvl3nh5xjrpbausxtynrq'), (b'x-request-id', b'req_bkti7zlhgi2qwih4j6vzaufgany3jmzzvl3nh5xjrpbausxtynrq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:57 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:57 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:57 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:57 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:57 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:57 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:57 GMT', 'content-type': 'application/json', 'content-length': '3734', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_bkti7zlhgi2qwih4j6vzaufgany3jmzzvl3nh5xjrpbausxtynrq', 'x-request-id': 'req_bkti7zlhgi2qwih4j6vzaufgany3jmzzvl3nh5xjrpbausxtynrq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:57 [openai._base_client] DEBUG: request_id: req_bkti7zlhgi2qwih4j6vzaufgany3jmzzvl3nh5xjrpbausxtynrq 2026-06-21 03:24:57 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-42700b79-d9f1-48cf-a909-f655cc5d5ca4', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Food , vibe and ambience was exellent!\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:57 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:57 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:57 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:57 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:57 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:57 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:24:59 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:24:59 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3703'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_ac6jdgc3uny62yzweaqw7shbx37dvamndkvtokn454metcb2am4q'), (b'x-request-id', b'req_ac6jdgc3uny62yzweaqw7shbx37dvamndkvtokn454metcb2am4q'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:24:59 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:24:59 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:24:59 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:24:59 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:24:59 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:24:59 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:24:59 GMT', 'content-type': 'application/json', 'content-length': '3703', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_ac6jdgc3uny62yzweaqw7shbx37dvamndkvtokn454metcb2am4q', 'x-request-id': 'req_ac6jdgc3uny62yzweaqw7shbx37dvamndkvtokn454metcb2am4q', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:24:59 [openai._base_client] DEBUG: request_id: req_ac6jdgc3uny62yzweaqw7shbx37dvamndkvtokn454metcb2am4q 2026-06-21 03:24:59 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-1749f214-04d5-4e21-b66e-fe59c163a390', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n really love the good .amazing experience at caffe allora and our host Nandita give us good suggestions about dishes briliant service by Nandita \n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:24:59 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:24:59 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:24:59 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:24:59 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:24:59 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:24:59 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:01 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:01 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'4329'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_pf6x3kjruzino72fnxtbw4l3vfnt7aoxy4nw7skotap2uwqorp6q'), (b'x-request-id', b'req_pf6x3kjruzino72fnxtbw4l3vfnt7aoxy4nw7skotap2uwqorp6q'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:01 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:01 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:01 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:01 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:01 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:01 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:01 GMT', 'content-type': 'application/json', 'content-length': '4329', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_pf6x3kjruzino72fnxtbw4l3vfnt7aoxy4nw7skotap2uwqorp6q', 'x-request-id': 'req_pf6x3kjruzino72fnxtbw4l3vfnt7aoxy4nw7skotap2uwqorp6q', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:01 [openai._base_client] DEBUG: request_id: req_pf6x3kjruzino72fnxtbw4l3vfnt7aoxy4nw7skotap2uwqorp6q 2026-06-21 03:25:01 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-011c4462-320e-4010-b142-ca0f9c327fa7', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Excellent service... As always !!!\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:01 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:01 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:01 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:01 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:01 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:01 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:02 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:02 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2734'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_c2bmnzqz7k7ton5bym6cbwdyauhbvrsqgqslw3f6ra4zxfeq7xfq'), (b'x-request-id', b'req_c2bmnzqz7k7ton5bym6cbwdyauhbvrsqgqslw3f6ra4zxfeq7xfq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:02 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:02 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:02 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:02 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:02 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:02 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:02 GMT', 'content-type': 'application/json', 'content-length': '2734', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_c2bmnzqz7k7ton5bym6cbwdyauhbvrsqgqslw3f6ra4zxfeq7xfq', 'x-request-id': 'req_c2bmnzqz7k7ton5bym6cbwdyauhbvrsqgqslw3f6ra4zxfeq7xfq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:02 [openai._base_client] DEBUG: request_id: req_c2bmnzqz7k7ton5bym6cbwdyauhbvrsqgqslw3f6ra4zxfeq7xfq 2026-06-21 03:25:02 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-f4ca536e-38fa-489c-9981-4ef2238de49d', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n To hit and team did an amazing job\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:02 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:02 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:02 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:02 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:02 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:02 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:04 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:04 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2568'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_5zpkellyakqzde76br2vumaztufczm23m46g7sygmojguicczjiq'), (b'x-request-id', b'req_5zpkellyakqzde76br2vumaztufczm23m46g7sygmojguicczjiq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:04 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:04 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:04 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:04 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:04 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:04 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:04 GMT', 'content-type': 'application/json', 'content-length': '2568', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_5zpkellyakqzde76br2vumaztufczm23m46g7sygmojguicczjiq', 'x-request-id': 'req_5zpkellyakqzde76br2vumaztufczm23m46g7sygmojguicczjiq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:04 [openai._base_client] DEBUG: request_id: req_5zpkellyakqzde76br2vumaztufczm23m46g7sygmojguicczjiq 2026-06-21 03:25:04 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-f57893b4-33ac-4082-a1a7-22c9a52e4545', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n service provided by omkar was very good.\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:04 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:04 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:04 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:04 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:04 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:04 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:06 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:06 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2422'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_nyot3xcrxkq2c3qplvaoh4ejvlhofesgns7sh7ginrgwdctrbrsa'), (b'x-request-id', b'req_nyot3xcrxkq2c3qplvaoh4ejvlhofesgns7sh7ginrgwdctrbrsa'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:06 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:06 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:06 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:06 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:06 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:06 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:06 GMT', 'content-type': 'application/json', 'content-length': '2422', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_nyot3xcrxkq2c3qplvaoh4ejvlhofesgns7sh7ginrgwdctrbrsa', 'x-request-id': 'req_nyot3xcrxkq2c3qplvaoh4ejvlhofesgns7sh7ginrgwdctrbrsa', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:06 [openai._base_client] DEBUG: request_id: req_nyot3xcrxkq2c3qplvaoh4ejvlhofesgns7sh7ginrgwdctrbrsa 2026-06-21 03:25:06 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-6f9fae9d-7f2a-4322-92bd-8403f11e4a79', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Good service. Good food. Impressive customer service.\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:06 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:06 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:06 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:06 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:06 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:06 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:07 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:07 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2981'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_bwxwo43smvaa7xo2uqi57bgl2z5v3qyotc52edncu7jhu3sew7wq'), (b'x-request-id', b'req_bwxwo43smvaa7xo2uqi57bgl2z5v3qyotc52edncu7jhu3sew7wq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:07 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:07 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:07 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:07 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:07 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:07 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:07 GMT', 'content-type': 'application/json', 'content-length': '2981', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_bwxwo43smvaa7xo2uqi57bgl2z5v3qyotc52edncu7jhu3sew7wq', 'x-request-id': 'req_bwxwo43smvaa7xo2uqi57bgl2z5v3qyotc52edncu7jhu3sew7wq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:07 [openai._base_client] DEBUG: request_id: req_bwxwo43smvaa7xo2uqi57bgl2z5v3qyotc52edncu7jhu3sew7wq 2026-06-21 03:25:07 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-249c7be6-2ba8-47e5-8051-c147349414c9', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n The food was delicious...The vibe was amazing...Really enjoyed my birthday party...must try\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:07 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:07 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:07 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:07 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:07 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:07 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:09 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:09 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3180'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_wzsjz3ctjey3v3s5x2enewbbbp57qri5kinhfecppnqyikfz7nha'), (b'x-request-id', b'req_wzsjz3ctjey3v3s5x2enewbbbp57qri5kinhfecppnqyikfz7nha'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:09 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:09 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:09 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:09 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:09 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:09 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:09 GMT', 'content-type': 'application/json', 'content-length': '3180', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_wzsjz3ctjey3v3s5x2enewbbbp57qri5kinhfecppnqyikfz7nha', 'x-request-id': 'req_wzsjz3ctjey3v3s5x2enewbbbp57qri5kinhfecppnqyikfz7nha', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:09 [openai._base_client] DEBUG: request_id: req_wzsjz3ctjey3v3s5x2enewbbbp57qri5kinhfecppnqyikfz7nha 2026-06-21 03:25:09 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-f97300a4-5c1f-437a-9b28-2ebb045a1ed2', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Manjunath did really fab job in getting us food on time and awesome hospitality\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:09 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:09 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:09 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:09 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:09 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:09 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:10 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:10 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2935'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_nvpnnnngopmaelw7utuk73qpauneyc2rpcsg2mhq5kyqyzyrjpyq'), (b'x-request-id', b'req_nvpnnnngopmaelw7utuk73qpauneyc2rpcsg2mhq5kyqyzyrjpyq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:10 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:10 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:10 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:10 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:10 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:10 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:10 GMT', 'content-type': 'application/json', 'content-length': '2935', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_nvpnnnngopmaelw7utuk73qpauneyc2rpcsg2mhq5kyqyzyrjpyq', 'x-request-id': 'req_nvpnnnngopmaelw7utuk73qpauneyc2rpcsg2mhq5kyqyzyrjpyq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:10 [openai._base_client] DEBUG: request_id: req_nvpnnnngopmaelw7utuk73qpauneyc2rpcsg2mhq5kyqyzyrjpyq 2026-06-21 03:25:10 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-4e791516-3939-4ef7-9a7a-0c930c06601a', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Good food, Great staff.\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:10 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:10 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:10 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:10 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:10 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:10 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:12 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:12 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2715'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_ycjamz7istiqqpyput7vepsegcg2hpcpqdugkqn6fixl36j5czra'), (b'x-request-id', b'req_ycjamz7istiqqpyput7vepsegcg2hpcpqdugkqn6fixl36j5czra'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:12 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:12 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:12 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:12 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:12 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:12 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:12 GMT', 'content-type': 'application/json', 'content-length': '2715', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_ycjamz7istiqqpyput7vepsegcg2hpcpqdugkqn6fixl36j5czra', 'x-request-id': 'req_ycjamz7istiqqpyput7vepsegcg2hpcpqdugkqn6fixl36j5czra', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:12 [openai._base_client] DEBUG: request_id: req_ycjamz7istiqqpyput7vepsegcg2hpcpqdugkqn6fixl36j5czra 2026-06-21 03:25:12 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-a5842999-a942-448a-b5c1-ce8b74953359', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Food was good, vibe was okay. Time for preparation also was ok\n Customer Rating:\n 4 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:12 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:12 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:12 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:12 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:12 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:12 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:14 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:14 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3440'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_tcmzy244vpqkmf6y2cdsc4eh4wdpthblb34o66g7hr3kb4rl4hkq'), (b'x-request-id', b'req_tcmzy244vpqkmf6y2cdsc4eh4wdpthblb34o66g7hr3kb4rl4hkq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:14 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:14 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:14 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:14 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:14 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:14 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:14 GMT', 'content-type': 'application/json', 'content-length': '3440', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_tcmzy244vpqkmf6y2cdsc4eh4wdpthblb34o66g7hr3kb4rl4hkq', 'x-request-id': 'req_tcmzy244vpqkmf6y2cdsc4eh4wdpthblb34o66g7hr3kb4rl4hkq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:14 [openai._base_client] DEBUG: request_id: req_tcmzy244vpqkmf6y2cdsc4eh4wdpthblb34o66g7hr3kb4rl4hkq 2026-06-21 03:25:14 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-6ab677a8-0cf7-49ad-87d5-7bf77a3dd28b', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Vibe was good. Food was also good. Service time could be improved\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:14 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:14 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:14 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:14 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:14 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:14 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:16 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:16 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3619'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_tlsu5fyw2bpircjkb5bdube6wzqsrahjdwrl6ubhgd5luabdgmoa'), (b'x-request-id', b'req_tlsu5fyw2bpircjkb5bdube6wzqsrahjdwrl6ubhgd5luabdgmoa'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:16 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:16 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:16 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:16 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:16 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:16 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:16 GMT', 'content-type': 'application/json', 'content-length': '3619', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_tlsu5fyw2bpircjkb5bdube6wzqsrahjdwrl6ubhgd5luabdgmoa', 'x-request-id': 'req_tlsu5fyw2bpircjkb5bdube6wzqsrahjdwrl6ubhgd5luabdgmoa', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:16 [openai._base_client] DEBUG: request_id: req_tlsu5fyw2bpircjkb5bdube6wzqsrahjdwrl6ubhgd5luabdgmoa 2026-06-21 03:25:16 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-69c336bc-029c-4a02-80a6-ea2a26eb16c3', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Great food. Great ambience. I had ordered Cripy Vegetable Cheung Fun as a starter and Dan Dan Veg Noodles which i must admit had a lot of quantity for a single person. the crispy vegetable cheung fun was amazing, but try to have it before it gets cold. Noodles was great, especially the gravy and the mix of lots of veggies was chef\'s kiss. Only downside is its expensive. \n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:16 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:16 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:16 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:16 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:16 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:16 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:22 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:22 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'8583'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_d7jyc37kdsa7lwvw2hmxfhph7l2hhls4fuuowmkmu5dqitpfl2xq'), (b'x-request-id', b'req_d7jyc37kdsa7lwvw2hmxfhph7l2hhls4fuuowmkmu5dqitpfl2xq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:22 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:22 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:22 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:22 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:22 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:22 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:22 GMT', 'content-type': 'application/json', 'content-length': '8583', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_d7jyc37kdsa7lwvw2hmxfhph7l2hhls4fuuowmkmu5dqitpfl2xq', 'x-request-id': 'req_d7jyc37kdsa7lwvw2hmxfhph7l2hhls4fuuowmkmu5dqitpfl2xq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:22 [openai._base_client] DEBUG: request_id: req_d7jyc37kdsa7lwvw2hmxfhph7l2hhls4fuuowmkmu5dqitpfl2xq 2026-06-21 03:25:22 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-934c6ef3-6848-4e44-8ef7-de2997459950', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n I enjoyed solo dining here. I ❤️ that they\'ve 1/2 portions on cocktails dimsums sushi.. can try diff items. chili coriander noods could be less sweet.\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:22 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:22 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:22 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:22 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:22 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:22 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:25 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:25 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'4271'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_4lmvetktanb6dpuyq3op6nnwahrpkphmtmxcbjlvx5527rc3x7qa'), (b'x-request-id', b'req_4lmvetktanb6dpuyq3op6nnwahrpkphmtmxcbjlvx5527rc3x7qa'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:25 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:25 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:25 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:25 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:25 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:25 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:25 GMT', 'content-type': 'application/json', 'content-length': '4271', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_4lmvetktanb6dpuyq3op6nnwahrpkphmtmxcbjlvx5527rc3x7qa', 'x-request-id': 'req_4lmvetktanb6dpuyq3op6nnwahrpkphmtmxcbjlvx5527rc3x7qa', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:25 [openai._base_client] DEBUG: request_id: req_4lmvetktanb6dpuyq3op6nnwahrpkphmtmxcbjlvx5527rc3x7qa 2026-06-21 03:25:25 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-9d4fbebb-e46a-4700-a662-74dec4fa3b40', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n great wonton soup bowl! 10/10 would recommend\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:25 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:25 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:25 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:25 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:25 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:25 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:28 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:28 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'4245'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_wgj4xmpqwfjzmfwb7nhobbvb7d34b5v5vpiodgq37hbna7wkckja'), (b'x-request-id', b'req_wgj4xmpqwfjzmfwb7nhobbvb7d34b5v5vpiodgq37hbna7wkckja'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:28 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:28 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:28 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:28 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:28 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:28 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:28 GMT', 'content-type': 'application/json', 'content-length': '4245', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_wgj4xmpqwfjzmfwb7nhobbvb7d34b5v5vpiodgq37hbna7wkckja', 'x-request-id': 'req_wgj4xmpqwfjzmfwb7nhobbvb7d34b5v5vpiodgq37hbna7wkckja', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:28 [openai._base_client] DEBUG: request_id: req_wgj4xmpqwfjzmfwb7nhobbvb7d34b5v5vpiodgq37hbna7wkckja 2026-06-21 03:25:28 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-f103da6e-7e5b-40a9-84ce-eb85c0ab4586', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Food was nice. Anuj Singh’s hospitality was top notch as well\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:28 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:28 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:28 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:28 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:28 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:28 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:30 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:30 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2997'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_jwnske7fshu4ic5swprnklhfz4yqyfd2htpy6aycsiodmhhr4oqq'), (b'x-request-id', b'req_jwnske7fshu4ic5swprnklhfz4yqyfd2htpy6aycsiodmhhr4oqq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:30 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:30 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:30 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:30 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:30 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:30 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:30 GMT', 'content-type': 'application/json', 'content-length': '2997', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_jwnske7fshu4ic5swprnklhfz4yqyfd2htpy6aycsiodmhhr4oqq', 'x-request-id': 'req_jwnske7fshu4ic5swprnklhfz4yqyfd2htpy6aycsiodmhhr4oqq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:30 [openai._base_client] DEBUG: request_id: req_jwnske7fshu4ic5swprnklhfz4yqyfd2htpy6aycsiodmhhr4oqq 2026-06-21 03:25:30 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-57a5ed4e-1665-480e-a080-4112804218f2', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n slow service, restroom hygiene not good\n Customer Rating:\n 1 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:30 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:30 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:30 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:30 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:30 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:30 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:30 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:30 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2110'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_jvegc63gl34zlxvf3gifk2gvmj3kt36a7vieevuin5ukh2fbrvca'), (b'x-request-id', b'req_jvegc63gl34zlxvf3gifk2gvmj3kt36a7vieevuin5ukh2fbrvca'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:30 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:30 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:30 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:30 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:30 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:30 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:30 GMT', 'content-type': 'application/json', 'content-length': '2110', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_jvegc63gl34zlxvf3gifk2gvmj3kt36a7vieevuin5ukh2fbrvca', 'x-request-id': 'req_jvegc63gl34zlxvf3gifk2gvmj3kt36a7vieevuin5ukh2fbrvca', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:30 [openai._base_client] DEBUG: request_id: req_jvegc63gl34zlxvf3gifk2gvmj3kt36a7vieevuin5ukh2fbrvca 2026-06-21 03:25:30 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-5bc39c6d-878d-488d-b8bb-f1c2eb032447', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Stir fried chicken mountain chilli was really good\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:30 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:30 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:30 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:30 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:30 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:30 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:32 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:32 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2274'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_fn5j3kvrgs4wtuc55vxrrfq64ngf34p4ywo7gg725h4il4ekuw6a'), (b'x-request-id', b'req_fn5j3kvrgs4wtuc55vxrrfq64ngf34p4ywo7gg725h4il4ekuw6a'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:32 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:32 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:32 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:32 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:32 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:32 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:32 GMT', 'content-type': 'application/json', 'content-length': '2274', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_fn5j3kvrgs4wtuc55vxrrfq64ngf34p4ywo7gg725h4il4ekuw6a', 'x-request-id': 'req_fn5j3kvrgs4wtuc55vxrrfq64ngf34p4ywo7gg725h4il4ekuw6a', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:32 [openai._base_client] DEBUG: request_id: req_fn5j3kvrgs4wtuc55vxrrfq64ngf34p4ywo7gg725h4il4ekuw6a 2026-06-21 03:25:32 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-59a2de5d-4ac0-4eaf-8bdc-437dd7f34b46', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Excellent food and top notch service by Aman!\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:32 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:32 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:32 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:32 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:32 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:32 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:33 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:33 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2965'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_dg4zql43ikhktbhegkrsdhttq32rg4yqiv4zhbyc3cvso3mzkywq'), (b'x-request-id', b'req_dg4zql43ikhktbhegkrsdhttq32rg4yqiv4zhbyc3cvso3mzkywq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:33 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:33 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:33 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:33 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:33 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:33 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:33 GMT', 'content-type': 'application/json', 'content-length': '2965', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_dg4zql43ikhktbhegkrsdhttq32rg4yqiv4zhbyc3cvso3mzkywq', 'x-request-id': 'req_dg4zql43ikhktbhegkrsdhttq32rg4yqiv4zhbyc3cvso3mzkywq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:33 [openai._base_client] DEBUG: request_id: req_dg4zql43ikhktbhegkrsdhttq32rg4yqiv4zhbyc3cvso3mzkywq 2026-06-21 03:25:33 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-0f393c2d-d5a2-4f50-8a4e-6f5db2402824', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n The service was excellent! Swapnil and Papan did a great job ! Food was also very tasty! 😋\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:33 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:33 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:33 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:33 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:33 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:33 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:35 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:35 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2879'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_leur6jegsfx2n6eztq6udtuhytdahu2f2eshlw7lshqownvyqvwa'), (b'x-request-id', b'req_leur6jegsfx2n6eztq6udtuhytdahu2f2eshlw7lshqownvyqvwa'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:35 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:35 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:35 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:35 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:35 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:35 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:35 GMT', 'content-type': 'application/json', 'content-length': '2879', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_leur6jegsfx2n6eztq6udtuhytdahu2f2eshlw7lshqownvyqvwa', 'x-request-id': 'req_leur6jegsfx2n6eztq6udtuhytdahu2f2eshlw7lshqownvyqvwa', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:35 [openai._base_client] DEBUG: request_id: req_leur6jegsfx2n6eztq6udtuhytdahu2f2eshlw7lshqownvyqvwa 2026-06-21 03:25:35 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-5c7ffc15-e1c4-4f80-a819-6a627dfcc65b', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Friendly and very good service\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:35 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:35 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:35 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:35 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:35 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:35 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:36 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:36 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3208'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_vjx567wfmckuawm7q35zgj42iuci2tmwgcqpbxal6uipkzmeyntq'), (b'x-request-id', b'req_vjx567wfmckuawm7q35zgj42iuci2tmwgcqpbxal6uipkzmeyntq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:36 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:36 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:36 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:36 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:36 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:36 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:36 GMT', 'content-type': 'application/json', 'content-length': '3208', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_vjx567wfmckuawm7q35zgj42iuci2tmwgcqpbxal6uipkzmeyntq', 'x-request-id': 'req_vjx567wfmckuawm7q35zgj42iuci2tmwgcqpbxal6uipkzmeyntq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:36 [openai._base_client] DEBUG: request_id: req_vjx567wfmckuawm7q35zgj42iuci2tmwgcqpbxal6uipkzmeyntq 2026-06-21 03:25:36 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-ff184e2d-2f94-4033-b96e-c0911f2e6ae5', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n awesome food with very good staff\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:36 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:36 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:36 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:36 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:36 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:36 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:37 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:37 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2606'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_i3bfb3xvhntf72c3qe4dalb3cdhvayl2y24ylvhogyt7aot5xn3a'), (b'x-request-id', b'req_i3bfb3xvhntf72c3qe4dalb3cdhvayl2y24ylvhogyt7aot5xn3a'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:37 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:37 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:37 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:37 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:37 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:37 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:37 GMT', 'content-type': 'application/json', 'content-length': '2606', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_i3bfb3xvhntf72c3qe4dalb3cdhvayl2y24ylvhogyt7aot5xn3a', 'x-request-id': 'req_i3bfb3xvhntf72c3qe4dalb3cdhvayl2y24ylvhogyt7aot5xn3a', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:37 [openai._base_client] DEBUG: request_id: req_i3bfb3xvhntf72c3qe4dalb3cdhvayl2y24ylvhogyt7aot5xn3a 2026-06-21 03:25:37 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-cf36d1f4-77ff-4243-bf8a-d885e36dd56f', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Great way. Makes the work a lot easy\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:37 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:37 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:37 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:37 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:37 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:37 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:38 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:38 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2099'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_erhf2iwkapssf337l26b7icd2lda7ncw35ntgbvga7ni53mikl7a'), (b'x-request-id', b'req_erhf2iwkapssf337l26b7icd2lda7ncw35ntgbvga7ni53mikl7a'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:38 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:38 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:38 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:38 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:38 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:38 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:38 GMT', 'content-type': 'application/json', 'content-length': '2099', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_erhf2iwkapssf337l26b7icd2lda7ncw35ntgbvga7ni53mikl7a', 'x-request-id': 'req_erhf2iwkapssf337l26b7icd2lda7ncw35ntgbvga7ni53mikl7a', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:38 [openai._base_client] DEBUG: request_id: req_erhf2iwkapssf337l26b7icd2lda7ncw35ntgbvga7ni53mikl7a 2026-06-21 03:25:38 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-a2d29142-159e-4f5b-89c5-6e3ac147e414', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Mr. Sadanand Yadav service was very very nice, and he is very nice person,very helpful\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:38 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:38 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:38 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:38 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:38 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:38 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:40 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:40 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3469'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_q4aa7ud3vjosthmu5z6a35umne7bc5rw5gwltoxlouxae5onqjqa'), (b'x-request-id', b'req_q4aa7ud3vjosthmu5z6a35umne7bc5rw5gwltoxlouxae5onqjqa'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:40 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:40 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:40 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:40 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:40 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:40 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:40 GMT', 'content-type': 'application/json', 'content-length': '3469', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_q4aa7ud3vjosthmu5z6a35umne7bc5rw5gwltoxlouxae5onqjqa', 'x-request-id': 'req_q4aa7ud3vjosthmu5z6a35umne7bc5rw5gwltoxlouxae5onqjqa', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:40 [openai._base_client] DEBUG: request_id: req_q4aa7ud3vjosthmu5z6a35umne7bc5rw5gwltoxlouxae5onqjqa 2026-06-21 03:25:40 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-bfeeb4e3-57e0-426c-b55f-573773bdf69c', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Shatish bhaiya served us very great\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:40 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:40 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:40 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:40 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:40 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:40 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:41 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:41 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2474'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_rq22zw3hu5zxum3ju2dn7wxk5mbhwvcegcchd326wjfljtdzmtwa'), (b'x-request-id', b'req_rq22zw3hu5zxum3ju2dn7wxk5mbhwvcegcchd326wjfljtdzmtwa'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:41 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:41 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:41 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:41 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:41 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:41 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:41 GMT', 'content-type': 'application/json', 'content-length': '2474', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_rq22zw3hu5zxum3ju2dn7wxk5mbhwvcegcchd326wjfljtdzmtwa', 'x-request-id': 'req_rq22zw3hu5zxum3ju2dn7wxk5mbhwvcegcchd326wjfljtdzmtwa', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:41 [openai._base_client] DEBUG: request_id: req_rq22zw3hu5zxum3ju2dn7wxk5mbhwvcegcchd326wjfljtdzmtwa 2026-06-21 03:25:41 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-5c514638-8577-40cc-9df0-5bc85509ad83', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Great food and service. Sonia was quite helpful \n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:41 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:41 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:41 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:41 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:41 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:41 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:42 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:42 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'4241'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_iz6yce7marhximqzcmmx7kzxwr32dtnrcnqe24p6t3q5pwxfzh7a'), (b'x-request-id', b'req_iz6yce7marhximqzcmmx7kzxwr32dtnrcnqe24p6t3q5pwxfzh7a'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:42 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:42 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:42 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:42 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:42 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:42 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:42 GMT', 'content-type': 'application/json', 'content-length': '4241', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_iz6yce7marhximqzcmmx7kzxwr32dtnrcnqe24p6t3q5pwxfzh7a', 'x-request-id': 'req_iz6yce7marhximqzcmmx7kzxwr32dtnrcnqe24p6t3q5pwxfzh7a', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:42 [openai._base_client] DEBUG: request_id: req_iz6yce7marhximqzcmmx7kzxwr32dtnrcnqe24p6t3q5pwxfzh7a 2026-06-21 03:25:42 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-7da59b31-9a24-489c-af03-48791384f42d', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Food was great! Service was amazing by- Adson and Viho!\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:42 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:42 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:42 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:42 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:42 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:42 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:43 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:43 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2648'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_veyd56k6fj6lx3gruhxhbpesg2ocankacpwev2p2pff7qkhinapa'), (b'x-request-id', b'req_veyd56k6fj6lx3gruhxhbpesg2ocankacpwev2p2pff7qkhinapa'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:43 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:43 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:43 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:43 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:43 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:43 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:43 GMT', 'content-type': 'application/json', 'content-length': '2648', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_veyd56k6fj6lx3gruhxhbpesg2ocankacpwev2p2pff7qkhinapa', 'x-request-id': 'req_veyd56k6fj6lx3gruhxhbpesg2ocankacpwev2p2pff7qkhinapa', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:43 [openai._base_client] DEBUG: request_id: req_veyd56k6fj6lx3gruhxhbpesg2ocankacpwev2p2pff7qkhinapa 2026-06-21 03:25:43 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-5f030e0b-9c93-4f6d-a872-bb1363b0c7ac', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Malvika was awesome\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:43 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:43 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:43 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:43 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:43 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:43 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:44 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:44 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2235'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_stpssyetyztybtyqrpzxykhtsls7cdxcjwwft5q64btma573edkq'), (b'x-request-id', b'req_stpssyetyztybtyqrpzxykhtsls7cdxcjwwft5q64btma573edkq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:44 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:44 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:44 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:44 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:44 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:44 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:44 GMT', 'content-type': 'application/json', 'content-length': '2235', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_stpssyetyztybtyqrpzxykhtsls7cdxcjwwft5q64btma573edkq', 'x-request-id': 'req_stpssyetyztybtyqrpzxykhtsls7cdxcjwwft5q64btma573edkq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:44 [openai._base_client] DEBUG: request_id: req_stpssyetyztybtyqrpzxykhtsls7cdxcjwwft5q64btma573edkq 2026-06-21 03:25:44 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-537cdd98-034c-4963-bc0d-daf70bd11beb', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n it was amazing and sarfraz was really professional and had the best experience because of him, will visit soon again💖\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:44 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:44 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:44 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:44 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:44 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:44 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:54 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:54 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3410'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_nieqvksr5jgdiqjkk7grufa35vfq7m7djlxvcly2ez2r3wuujcja'), (b'x-request-id', b'req_nieqvksr5jgdiqjkk7grufa35vfq7m7djlxvcly2ez2r3wuujcja'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:54 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:54 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:54 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:54 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:54 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:54 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:54 GMT', 'content-type': 'application/json', 'content-length': '3410', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_nieqvksr5jgdiqjkk7grufa35vfq7m7djlxvcly2ez2r3wuujcja', 'x-request-id': 'req_nieqvksr5jgdiqjkk7grufa35vfq7m7djlxvcly2ez2r3wuujcja', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:54 [openai._base_client] DEBUG: request_id: req_nieqvksr5jgdiqjkk7grufa35vfq7m7djlxvcly2ez2r3wuujcja 2026-06-21 03:25:54 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-9d67f4a4-5030-4c70-8277-dc9fae34ec7e', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Amazing food, Amazing vibes!!!\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:54 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:54 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:54 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:54 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:54 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:54 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:55 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:55 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2335'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_gn3qud3mrh5qpzwfvkn5cwafuz3lq5tjvzwpd76fzgngcehrraxq'), (b'x-request-id', b'req_gn3qud3mrh5qpzwfvkn5cwafuz3lq5tjvzwpd76fzgngcehrraxq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:55 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:55 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:55 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:55 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:55 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:55 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:55 GMT', 'content-type': 'application/json', 'content-length': '2335', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_gn3qud3mrh5qpzwfvkn5cwafuz3lq5tjvzwpd76fzgngcehrraxq', 'x-request-id': 'req_gn3qud3mrh5qpzwfvkn5cwafuz3lq5tjvzwpd76fzgngcehrraxq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:55 [openai._base_client] DEBUG: request_id: req_gn3qud3mrh5qpzwfvkn5cwafuz3lq5tjvzwpd76fzgngcehrraxq 2026-06-21 03:25:55 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-e05c1b92-d434-43c4-bb99-47cfda2f08d7', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n ser is so good 👍👍👍\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:55 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:55 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:55 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:55 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:55 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:55 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:56 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:56 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2262'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_aocngtjjcp5k2pt2cfctduwovnhngcvckgzhqperodkl65m5mara'), (b'x-request-id', b'req_aocngtjjcp5k2pt2cfctduwovnhngcvckgzhqperodkl65m5mara'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:56 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:56 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:56 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:56 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:56 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:56 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:56 GMT', 'content-type': 'application/json', 'content-length': '2262', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_aocngtjjcp5k2pt2cfctduwovnhngcvckgzhqperodkl65m5mara', 'x-request-id': 'req_aocngtjjcp5k2pt2cfctduwovnhngcvckgzhqperodkl65m5mara', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:56 [openai._base_client] DEBUG: request_id: req_aocngtjjcp5k2pt2cfctduwovnhngcvckgzhqperodkl65m5mara 2026-06-21 03:25:56 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-bc6e3faa-80ec-4098-ba60-1153ce5a2b6a', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n lovely experience \n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:56 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:56 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:56 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:56 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:56 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:56 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:57 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:57 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'1562'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_ajptxidqzoypblb2427o6inxocr6xqlxnyn7d77fni63mn7ugksq'), (b'x-request-id', b'req_ajptxidqzoypblb2427o6inxocr6xqlxnyn7d77fni63mn7ugksq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:57 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:57 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:57 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:57 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:57 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:57 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:57 GMT', 'content-type': 'application/json', 'content-length': '1562', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_ajptxidqzoypblb2427o6inxocr6xqlxnyn7d77fni63mn7ugksq', 'x-request-id': 'req_ajptxidqzoypblb2427o6inxocr6xqlxnyn7d77fni63mn7ugksq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:57 [openai._base_client] DEBUG: request_id: req_ajptxidqzoypblb2427o6inxocr6xqlxnyn7d77fni63mn7ugksq 2026-06-21 03:25:57 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-0cbe65e0-af5e-4afb-ab03-b0d962bbe1a2', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Food is good .. the staff Akash was v helpful\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:57 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:57 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:57 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:57 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:57 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:57 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:58 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:58 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2876'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_vi22o7dclcomrj47azv3j4ygjogtyeo7h4f4l6bso4zgeojeqj4q'), (b'x-request-id', b'req_vi22o7dclcomrj47azv3j4ygjogtyeo7h4f4l6bso4zgeojeqj4q'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:58 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:58 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:58 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:58 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:58 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:58 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:58 GMT', 'content-type': 'application/json', 'content-length': '2876', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_vi22o7dclcomrj47azv3j4ygjogtyeo7h4f4l6bso4zgeojeqj4q', 'x-request-id': 'req_vi22o7dclcomrj47azv3j4ygjogtyeo7h4f4l6bso4zgeojeqj4q', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:58 [openai._base_client] DEBUG: request_id: req_vi22o7dclcomrj47azv3j4ygjogtyeo7h4f4l6bso4zgeojeqj4q 2026-06-21 03:25:58 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-9a01e69f-13c5-4c57-aa73-d486491f956b', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Served by Akash. Good food. Good service.\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:58 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:58 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:58 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:58 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:58 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:58 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:25:59 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:25:59 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3840'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_3uuw3j35q77syesafyp5nb6cefi6ceo43hmd2c2psxke2m7iaouq'), (b'x-request-id', b'req_3uuw3j35q77syesafyp5nb6cefi6ceo43hmd2c2psxke2m7iaouq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:25:59 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:25:59 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:25:59 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:25:59 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:25:59 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:25:59 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:25:59 GMT', 'content-type': 'application/json', 'content-length': '3840', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_3uuw3j35q77syesafyp5nb6cefi6ceo43hmd2c2psxke2m7iaouq', 'x-request-id': 'req_3uuw3j35q77syesafyp5nb6cefi6ceo43hmd2c2psxke2m7iaouq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:25:59 [openai._base_client] DEBUG: request_id: req_3uuw3j35q77syesafyp5nb6cefi6ceo43hmd2c2psxke2m7iaouq 2026-06-21 03:25:59 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-f6478c64-7591-47fe-94fc-07d6dd0625df', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Service was great . Pappan was very polite and helpful\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:25:59 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:25:59 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:25:59 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:25:59 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:25:59 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:25:59 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:01 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:01 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3123'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_ynebi3cimvwkngd7yn5zxvkxp7mgwmcfkrsro5e2yvmbtxuwrfna'), (b'x-request-id', b'req_ynebi3cimvwkngd7yn5zxvkxp7mgwmcfkrsro5e2yvmbtxuwrfna'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:01 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:01 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:01 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:01 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:01 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:01 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:01 GMT', 'content-type': 'application/json', 'content-length': '3123', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_ynebi3cimvwkngd7yn5zxvkxp7mgwmcfkrsro5e2yvmbtxuwrfna', 'x-request-id': 'req_ynebi3cimvwkngd7yn5zxvkxp7mgwmcfkrsro5e2yvmbtxuwrfna', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:01 [openai._base_client] DEBUG: request_id: req_ynebi3cimvwkngd7yn5zxvkxp7mgwmcfkrsro5e2yvmbtxuwrfna 2026-06-21 03:26:01 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-daa17b8d-20f0-4723-b364-db3faaecc9c1', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n The food was extremely delicious and soulful until the biryani arrived. The starters, butter chicken, naan - all were going good, where the actual taste was coming and not that of chillies. But when the biryani came and when we tasted, we were so disappointed. We went to ishaara only to have some authentic north Indian flavour, but biryani was as usual full of red chilli powder that would burn the tongue. Same old south indian style biryani where the biryani is all about hot spicy taste and not at all aromatic. It looked like even if the y call it as awadhi style restaurant, but they failed in doing justice when it came to biryani😏😒\n Customer Rating:\n 3 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:01 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:01 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:01 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:01 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:01 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:01 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:04 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:04 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'4971'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_xbnqt2wlp6wfuphsrhhlbk374s3vfm4czljge4nmkmdptx6f5r4q'), (b'x-request-id', b'req_xbnqt2wlp6wfuphsrhhlbk374s3vfm4czljge4nmkmdptx6f5r4q'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:04 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:04 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:04 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:04 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:04 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:04 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:04 GMT', 'content-type': 'application/json', 'content-length': '4971', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_xbnqt2wlp6wfuphsrhhlbk374s3vfm4czljge4nmkmdptx6f5r4q', 'x-request-id': 'req_xbnqt2wlp6wfuphsrhhlbk374s3vfm4czljge4nmkmdptx6f5r4q', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:04 [openai._base_client] DEBUG: request_id: req_xbnqt2wlp6wfuphsrhhlbk374s3vfm4czljge4nmkmdptx6f5r4q 2026-06-21 03:26:04 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-454159ab-7dce-47a0-9e83-af1644f13bee', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Thanks Anjali!\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:04 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:04 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:04 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:04 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:04 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:04 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:04 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:04 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'1821'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_j6yianfamde3zmf6nchq2nhyet5wunyhfljwjsdxchdhgfynk4dq'), (b'x-request-id', b'req_j6yianfamde3zmf6nchq2nhyet5wunyhfljwjsdxchdhgfynk4dq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:04 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:04 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:04 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:04 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:04 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:04 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:04 GMT', 'content-type': 'application/json', 'content-length': '1821', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_j6yianfamde3zmf6nchq2nhyet5wunyhfljwjsdxchdhgfynk4dq', 'x-request-id': 'req_j6yianfamde3zmf6nchq2nhyet5wunyhfljwjsdxchdhgfynk4dq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:04 [openai._base_client] DEBUG: request_id: req_j6yianfamde3zmf6nchq2nhyet5wunyhfljwjsdxchdhgfynk4dq 2026-06-21 03:26:04 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-98b7d9c7-94fa-4edb-8bc8-e31f59a23c26', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n good food and service\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:04 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:04 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:04 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:04 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:04 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:04 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:06 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:06 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2740'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_ghgmn5757qpsbjzezypyljdw7sdy3ictzgxia5ntf7f37krntcnq'), (b'x-request-id', b'req_ghgmn5757qpsbjzezypyljdw7sdy3ictzgxia5ntf7f37krntcnq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:06 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:06 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:06 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:06 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:06 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:06 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:06 GMT', 'content-type': 'application/json', 'content-length': '2740', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_ghgmn5757qpsbjzezypyljdw7sdy3ictzgxia5ntf7f37krntcnq', 'x-request-id': 'req_ghgmn5757qpsbjzezypyljdw7sdy3ictzgxia5ntf7f37krntcnq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:06 [openai._base_client] DEBUG: request_id: req_ghgmn5757qpsbjzezypyljdw7sdy3ictzgxia5ntf7f37krntcnq 2026-06-21 03:26:06 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-f64b42d9-5b2a-478e-9f60-168bb4044f38', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Excellent service by Anjali .She was very sweet and polite, attentive, and made our dining experience very comfortable.\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:06 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:06 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:06 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:06 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:06 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:06 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:08 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:08 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3826'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_t3wgcb5k5h3nkhoe5mae4qreyxvbazimcdxueeh3wbyqsc2rf63q'), (b'x-request-id', b'req_t3wgcb5k5h3nkhoe5mae4qreyxvbazimcdxueeh3wbyqsc2rf63q'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:08 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:08 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:08 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:08 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:08 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:08 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:08 GMT', 'content-type': 'application/json', 'content-length': '3826', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_t3wgcb5k5h3nkhoe5mae4qreyxvbazimcdxueeh3wbyqsc2rf63q', 'x-request-id': 'req_t3wgcb5k5h3nkhoe5mae4qreyxvbazimcdxueeh3wbyqsc2rf63q', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:08 [openai._base_client] DEBUG: request_id: req_t3wgcb5k5h3nkhoe5mae4qreyxvbazimcdxueeh3wbyqsc2rf63q 2026-06-21 03:26:08 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-acb11867-cfb3-4863-b942-fdb5a8a587a5', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n quick and wonderful service by Nirmal\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:08 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:08 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:08 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:08 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:08 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:08 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:10 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:10 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2982'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_lzqslsyvrpa2f6zjtm4w2uimicisymmlkclyok3esfnm3gi3rrua'), (b'x-request-id', b'req_lzqslsyvrpa2f6zjtm4w2uimicisymmlkclyok3esfnm3gi3rrua'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:10 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:10 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:10 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:10 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:10 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:10 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:10 GMT', 'content-type': 'application/json', 'content-length': '2982', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_lzqslsyvrpa2f6zjtm4w2uimicisymmlkclyok3esfnm3gi3rrua', 'x-request-id': 'req_lzqslsyvrpa2f6zjtm4w2uimicisymmlkclyok3esfnm3gi3rrua', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:10 [openai._base_client] DEBUG: request_id: req_lzqslsyvrpa2f6zjtm4w2uimicisymmlkclyok3esfnm3gi3rrua 2026-06-21 03:26:10 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-42b11baf-fd7b-4f3b-a54d-d939cbea3674', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n great service by Anjali. prawn dimsum are really good \n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:10 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:10 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:10 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:10 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:10 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:10 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:11 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:11 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2705'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_xzzq5jemtyvth2yozdxyw2w5gc4dyueppg4d3ktg2lxck4miodoq'), (b'x-request-id', b'req_xzzq5jemtyvth2yozdxyw2w5gc4dyueppg4d3ktg2lxck4miodoq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:11 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:11 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:11 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:11 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:11 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:11 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:11 GMT', 'content-type': 'application/json', 'content-length': '2705', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_xzzq5jemtyvth2yozdxyw2w5gc4dyueppg4d3ktg2lxck4miodoq', 'x-request-id': 'req_xzzq5jemtyvth2yozdxyw2w5gc4dyueppg4d3ktg2lxck4miodoq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:11 [openai._base_client] DEBUG: request_id: req_xzzq5jemtyvth2yozdxyw2w5gc4dyueppg4d3ktg2lxck4miodoq 2026-06-21 03:26:11 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-8697d8ba-2cb2-45f6-91f7-181f0094bef5', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Nirmal was very good at his service. And the experience was Awesome!\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:11 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:11 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:11 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:11 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:11 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:11 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:12 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:12 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3955'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_wra4xlaxtsnp7rf5lubn6vb5k3ls75sgyg3nfrzfssp5rn7vik6q'), (b'x-request-id', b'req_wra4xlaxtsnp7rf5lubn6vb5k3ls75sgyg3nfrzfssp5rn7vik6q'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:12 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:12 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:12 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:12 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:12 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:12 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:12 GMT', 'content-type': 'application/json', 'content-length': '3955', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_wra4xlaxtsnp7rf5lubn6vb5k3ls75sgyg3nfrzfssp5rn7vik6q', 'x-request-id': 'req_wra4xlaxtsnp7rf5lubn6vb5k3ls75sgyg3nfrzfssp5rn7vik6q', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:12 [openai._base_client] DEBUG: request_id: req_wra4xlaxtsnp7rf5lubn6vb5k3ls75sgyg3nfrzfssp5rn7vik6q 2026-06-21 03:26:12 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-b981ac05-17ff-4600-9b27-e5b2edba4624', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Nirmal was really helpful\n Customer Rating:\n 4 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:12 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:12 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:12 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:12 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:12 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:12 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:13 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:13 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2098'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_6wuv6y4s75mxw6r2o6swz56wzhoe2r2b3ulnou5om2sfdpgo2tkq'), (b'x-request-id', b'req_6wuv6y4s75mxw6r2o6swz56wzhoe2r2b3ulnou5om2sfdpgo2tkq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:13 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:13 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:13 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:13 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:13 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:13 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:13 GMT', 'content-type': 'application/json', 'content-length': '2098', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_6wuv6y4s75mxw6r2o6swz56wzhoe2r2b3ulnou5om2sfdpgo2tkq', 'x-request-id': 'req_6wuv6y4s75mxw6r2o6swz56wzhoe2r2b3ulnou5om2sfdpgo2tkq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:13 [openai._base_client] DEBUG: request_id: req_6wuv6y4s75mxw6r2o6swz56wzhoe2r2b3ulnou5om2sfdpgo2tkq 2026-06-21 03:26:13 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-1776e273-2014-4355-93c3-fcda39e00915', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Excellent service by nirmal must visit\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:13 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:13 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:13 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:13 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:13 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:13 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:15 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:15 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3181'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_lavizbac6scuyejikub4zjvlpxosf6gymx3geb5ktj7oqwlzrqaa'), (b'x-request-id', b'req_lavizbac6scuyejikub4zjvlpxosf6gymx3geb5ktj7oqwlzrqaa'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:15 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:15 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:15 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:15 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:15 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:15 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:15 GMT', 'content-type': 'application/json', 'content-length': '3181', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_lavizbac6scuyejikub4zjvlpxosf6gymx3geb5ktj7oqwlzrqaa', 'x-request-id': 'req_lavizbac6scuyejikub4zjvlpxosf6gymx3geb5ktj7oqwlzrqaa', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:15 [openai._base_client] DEBUG: request_id: req_lavizbac6scuyejikub4zjvlpxosf6gymx3geb5ktj7oqwlzrqaa 2026-06-21 03:26:15 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-d4aaec8b-9c83-42e3-94ec-0e28f653d6d7', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Great authentic food\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:15 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:15 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:15 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:15 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:15 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:15 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:17 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:17 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3296'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_khuwms7awjricw53cw3pw7jgtkrubcp3rwndzwy6rofjqe7xk67q'), (b'x-request-id', b'req_khuwms7awjricw53cw3pw7jgtkrubcp3rwndzwy6rofjqe7xk67q'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:17 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:17 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:17 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:17 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:17 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:17 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:17 GMT', 'content-type': 'application/json', 'content-length': '3296', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_khuwms7awjricw53cw3pw7jgtkrubcp3rwndzwy6rofjqe7xk67q', 'x-request-id': 'req_khuwms7awjricw53cw3pw7jgtkrubcp3rwndzwy6rofjqe7xk67q', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:17 [openai._base_client] DEBUG: request_id: req_khuwms7awjricw53cw3pw7jgtkrubcp3rwndzwy6rofjqe7xk67q 2026-06-21 03:26:17 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-fbaf5779-af21-4f96-9950-3aa268849122', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n food as always excellent and JK helped us with the delicious items on the menu \n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:17 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:17 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:17 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:17 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:17 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:17 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:20 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:20 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'4257'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_kwdayovdqyhdgy4hnoiuwvquvcirjfz3tm57gbaal5vroymdzx2a'), (b'x-request-id', b'req_kwdayovdqyhdgy4hnoiuwvquvcirjfz3tm57gbaal5vroymdzx2a'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:20 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:20 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:20 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:20 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:20 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:20 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:20 GMT', 'content-type': 'application/json', 'content-length': '4257', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_kwdayovdqyhdgy4hnoiuwvquvcirjfz3tm57gbaal5vroymdzx2a', 'x-request-id': 'req_kwdayovdqyhdgy4hnoiuwvquvcirjfz3tm57gbaal5vroymdzx2a', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:20 [openai._base_client] DEBUG: request_id: req_kwdayovdqyhdgy4hnoiuwvquvcirjfz3tm57gbaal5vroymdzx2a 2026-06-21 03:26:20 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-d5554496-549b-41b9-9db3-0960b2d933d3', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Nirmal served us well. Food is decent and good\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:20 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:20 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:20 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:20 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:20 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:20 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:21 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:21 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2917'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_2o4ugaco4cmldw3i3eywgv5s4masksc2cf5ijgl6awfq5c6kyyjq'), (b'x-request-id', b'req_2o4ugaco4cmldw3i3eywgv5s4masksc2cf5ijgl6awfq5c6kyyjq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:21 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:21 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:21 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:21 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:21 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:21 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:21 GMT', 'content-type': 'application/json', 'content-length': '2917', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_2o4ugaco4cmldw3i3eywgv5s4masksc2cf5ijgl6awfq5c6kyyjq', 'x-request-id': 'req_2o4ugaco4cmldw3i3eywgv5s4masksc2cf5ijgl6awfq5c6kyyjq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:21 [openai._base_client] DEBUG: request_id: req_2o4ugaco4cmldw3i3eywgv5s4masksc2cf5ijgl6awfq5c6kyyjq 2026-06-21 03:26:21 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-95fc05d4-ed0f-4d4e-82e3-5299f3c5ea68', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Excellent taste and service by Nirmal. The sushi was really good.\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:21 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:21 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:21 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:21 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:21 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:21 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:23 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:23 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'4312'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_a4r3m4laa7azukmhlbxclprf3d7gfzdpv7m2c6buiomkip5gzqja'), (b'x-request-id', b'req_a4r3m4laa7azukmhlbxclprf3d7gfzdpv7m2c6buiomkip5gzqja'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:23 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:23 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:23 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:23 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:23 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:23 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:23 GMT', 'content-type': 'application/json', 'content-length': '4312', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_a4r3m4laa7azukmhlbxclprf3d7gfzdpv7m2c6buiomkip5gzqja', 'x-request-id': 'req_a4r3m4laa7azukmhlbxclprf3d7gfzdpv7m2c6buiomkip5gzqja', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:23 [openai._base_client] DEBUG: request_id: req_a4r3m4laa7azukmhlbxclprf3d7gfzdpv7m2c6buiomkip5gzqja 2026-06-21 03:26:23 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-be01dbde-7369-4568-8294-f8c806230e68', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n AC was not working well and felt clostrophobic.\nSpoils the experience of dining.\n Customer Rating:\n 3 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:23 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:23 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:23 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:23 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:23 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:23 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:25 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:25 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2639'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_t32jrbms3ytze4rttr47in5pkhngoencfoqec7dtilc4okwbe2mq'), (b'x-request-id', b'req_t32jrbms3ytze4rttr47in5pkhngoencfoqec7dtilc4okwbe2mq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:25 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:25 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:25 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:25 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:25 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:25 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:25 GMT', 'content-type': 'application/json', 'content-length': '2639', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_t32jrbms3ytze4rttr47in5pkhngoencfoqec7dtilc4okwbe2mq', 'x-request-id': 'req_t32jrbms3ytze4rttr47in5pkhngoencfoqec7dtilc4okwbe2mq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:25 [openai._base_client] DEBUG: request_id: req_t32jrbms3ytze4rttr47in5pkhngoencfoqec7dtilc4okwbe2mq 2026-06-21 03:26:25 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-81353561-4c20-4e89-84b1-58182bd7109e', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n I was served by Sudipta Rana. He was very courteous and professional. Loved his smile and hospitality.\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:25 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:25 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:25 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:25 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:25 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:25 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:25 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:25 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3019'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_s7dq6hy5ssardxohtprslvabvmcnkjbamtxivczhzdfg6absrfwq'), (b'x-request-id', b'req_s7dq6hy5ssardxohtprslvabvmcnkjbamtxivczhzdfg6absrfwq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:25 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:25 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:25 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:25 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:25 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:25 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:25 GMT', 'content-type': 'application/json', 'content-length': '3019', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_s7dq6hy5ssardxohtprslvabvmcnkjbamtxivczhzdfg6absrfwq', 'x-request-id': 'req_s7dq6hy5ssardxohtprslvabvmcnkjbamtxivczhzdfg6absrfwq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:25 [openai._base_client] DEBUG: request_id: req_s7dq6hy5ssardxohtprslvabvmcnkjbamtxivczhzdfg6absrfwq 2026-06-21 03:26:25 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-a36593d0-f97d-4b58-bf85-e1842baf1de9', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Good service from Vishal & Ishaara team! :-)\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:25 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:26 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:26 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:26 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:26 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:26 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:28 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:28 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3845'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_abuejaupxxkl5pt5pexepvyx7ntea2mohxganzj4wrf3nxdaoz7q'), (b'x-request-id', b'req_abuejaupxxkl5pt5pexepvyx7ntea2mohxganzj4wrf3nxdaoz7q'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:28 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:28 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:28 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:28 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:28 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:28 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:28 GMT', 'content-type': 'application/json', 'content-length': '3845', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_abuejaupxxkl5pt5pexepvyx7ntea2mohxganzj4wrf3nxdaoz7q', 'x-request-id': 'req_abuejaupxxkl5pt5pexepvyx7ntea2mohxganzj4wrf3nxdaoz7q', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:28 [openai._base_client] DEBUG: request_id: req_abuejaupxxkl5pt5pexepvyx7ntea2mohxganzj4wrf3nxdaoz7q 2026-06-21 03:26:28 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-6a29c827-d87f-47fc-b2e9-b7f5ff4a0248', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Imran was very good and sweet\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:28 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:28 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:28 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:28 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:28 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:28 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:29 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:29 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2610'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_urmymx54x3r7ogz7w6tllou53tfa6mf6hdin7lnd5bdi5ppcfftq'), (b'x-request-id', b'req_urmymx54x3r7ogz7w6tllou53tfa6mf6hdin7lnd5bdi5ppcfftq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:29 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:29 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:29 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:29 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:29 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:29 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:29 GMT', 'content-type': 'application/json', 'content-length': '2610', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_urmymx54x3r7ogz7w6tllou53tfa6mf6hdin7lnd5bdi5ppcfftq', 'x-request-id': 'req_urmymx54x3r7ogz7w6tllou53tfa6mf6hdin7lnd5bdi5ppcfftq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:29 [openai._base_client] DEBUG: request_id: req_urmymx54x3r7ogz7w6tllou53tfa6mf6hdin7lnd5bdi5ppcfftq 2026-06-21 03:26:29 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-976874f6-83fd-4a6d-bf8a-1f39b75468e8', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Great service by Humayun\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:29 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:29 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:29 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:29 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:29 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:29 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:31 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:31 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2824'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_cdpiu73qemio37tljqrspl6gdufdfa2jz7r462kxhfk757njkc4a'), (b'x-request-id', b'req_cdpiu73qemio37tljqrspl6gdufdfa2jz7r462kxhfk757njkc4a'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:31 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:31 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:31 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:31 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:31 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:31 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:31 GMT', 'content-type': 'application/json', 'content-length': '2824', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_cdpiu73qemio37tljqrspl6gdufdfa2jz7r462kxhfk757njkc4a', 'x-request-id': 'req_cdpiu73qemio37tljqrspl6gdufdfa2jz7r462kxhfk757njkc4a', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:31 [openai._base_client] DEBUG: request_id: req_cdpiu73qemio37tljqrspl6gdufdfa2jz7r462kxhfk757njkc4a 2026-06-21 03:26:31 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-912fbec6-87b9-49b5-bd19-78231f7613fc', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Sudipta provided great service. Food is amazing and amazing ambiance.\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:31 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:31 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:31 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:31 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:31 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:31 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:32 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:32 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2970'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_cyhotjg5gtx6olanmafqsgxipqvbsf2e657udnzxri4h3jbe26hq'), (b'x-request-id', b'req_cyhotjg5gtx6olanmafqsgxipqvbsf2e657udnzxri4h3jbe26hq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:32 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:32 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:32 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:32 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:32 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:32 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:32 GMT', 'content-type': 'application/json', 'content-length': '2970', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_cyhotjg5gtx6olanmafqsgxipqvbsf2e657udnzxri4h3jbe26hq', 'x-request-id': 'req_cyhotjg5gtx6olanmafqsgxipqvbsf2e657udnzxri4h3jbe26hq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:32 [openai._base_client] DEBUG: request_id: req_cyhotjg5gtx6olanmafqsgxipqvbsf2e657udnzxri4h3jbe26hq 2026-06-21 03:26:32 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-19cfa01e-3310-439b-8043-819cfad63896', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n The food was so good and ambiance is very nice\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:32 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:32 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:32 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:32 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:32 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:32 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:34 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:34 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3445'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_wxom5xt3af77hewyrhm6nbcnzndlmvz6pgbh74rnz6pneh4xr65q'), (b'x-request-id', b'req_wxom5xt3af77hewyrhm6nbcnzndlmvz6pgbh74rnz6pneh4xr65q'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:34 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:34 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:34 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:34 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:34 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:34 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:34 GMT', 'content-type': 'application/json', 'content-length': '3445', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_wxom5xt3af77hewyrhm6nbcnzndlmvz6pgbh74rnz6pneh4xr65q', 'x-request-id': 'req_wxom5xt3af77hewyrhm6nbcnzndlmvz6pgbh74rnz6pneh4xr65q', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:34 [openai._base_client] DEBUG: request_id: req_wxom5xt3af77hewyrhm6nbcnzndlmvz6pgbh74rnz6pneh4xr65q 2026-06-21 03:26:34 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-8f46c793-5012-490d-9dd1-0fff1ee9aa29', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Humayun and Imran were amazing, we really enjoyed the place\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:34 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:34 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:34 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:34 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:34 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:34 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:36 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:36 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3022'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_gegxsp5cupx2jnd25ykv6hlpoftag4ensph2lckuds5ywaf3lkiq'), (b'x-request-id', b'req_gegxsp5cupx2jnd25ykv6hlpoftag4ensph2lckuds5ywaf3lkiq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:36 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:36 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:36 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:36 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:36 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:36 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:36 GMT', 'content-type': 'application/json', 'content-length': '3022', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_gegxsp5cupx2jnd25ykv6hlpoftag4ensph2lckuds5ywaf3lkiq', 'x-request-id': 'req_gegxsp5cupx2jnd25ykv6hlpoftag4ensph2lckuds5ywaf3lkiq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:36 [openai._base_client] DEBUG: request_id: req_gegxsp5cupx2jnd25ykv6hlpoftag4ensph2lckuds5ywaf3lkiq 2026-06-21 03:26:36 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-aca984f3-53f8-4325-b031-69c25ef0e97b', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n A beautifully curated dining experience at Eight, Palladium. ✨\nFrom the comforting soup and fresh sushi to the delicate dim sums, flavourful starters, satisfying main course, and indulgent desserts, every course was thoughtfully crafted and perfectly executed. A seamless Pan-Asian feast from start to finish.\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:36 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:36 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:36 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:36 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:36 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:36 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:40 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:40 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'5437'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_dltxbhtu47z2y2gzhedmhpnbw3crafhg6uls3bphgu7cj5iqqora'), (b'x-request-id', b'req_dltxbhtu47z2y2gzhedmhpnbw3crafhg6uls3bphgu7cj5iqqora'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:40 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:40 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:40 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:40 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:40 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:40 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:40 GMT', 'content-type': 'application/json', 'content-length': '5437', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_dltxbhtu47z2y2gzhedmhpnbw3crafhg6uls3bphgu7cj5iqqora', 'x-request-id': 'req_dltxbhtu47z2y2gzhedmhpnbw3crafhg6uls3bphgu7cj5iqqora', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:40 [openai._base_client] DEBUG: request_id: req_dltxbhtu47z2y2gzhedmhpnbw3crafhg6uls3bphgu7cj5iqqora 2026-06-21 03:26:40 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-cb14ac90-1a7d-4c10-88e6-ab2e8be00191', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Yachae Tteokbokki was good, should try atleast once.\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:40 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:40 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:40 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:40 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:40 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:40 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:41 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:41 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2295'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_guscsgdrenl3l53lfdu747rnszl2hd235qgzoer3so7brmoc4c6q'), (b'x-request-id', b'req_guscsgdrenl3l53lfdu747rnszl2hd235qgzoer3so7brmoc4c6q'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:41 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:41 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:41 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:41 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:41 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:41 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:41 GMT', 'content-type': 'application/json', 'content-length': '2295', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_guscsgdrenl3l53lfdu747rnszl2hd235qgzoer3so7brmoc4c6q', 'x-request-id': 'req_guscsgdrenl3l53lfdu747rnszl2hd235qgzoer3so7brmoc4c6q', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:41 [openai._base_client] DEBUG: request_id: req_guscsgdrenl3l53lfdu747rnszl2hd235qgzoer3so7brmoc4c6q 2026-06-21 03:26:41 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-aeba12c1-f723-4565-a45b-d85beed075d4', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n The new korean menu was pretty good make sure to try their korean special rice\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:41 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:41 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:41 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:41 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:41 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:41 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:43 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:43 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3177'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_ioabfomxq6kjqmfvaifowosvvfqxhxd3olpyh6ewoibnfmbfyz3a'), (b'x-request-id', b'req_ioabfomxq6kjqmfvaifowosvvfqxhxd3olpyh6ewoibnfmbfyz3a'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:43 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:43 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:43 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:43 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:43 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:43 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:43 GMT', 'content-type': 'application/json', 'content-length': '3177', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_ioabfomxq6kjqmfvaifowosvvfqxhxd3olpyh6ewoibnfmbfyz3a', 'x-request-id': 'req_ioabfomxq6kjqmfvaifowosvvfqxhxd3olpyh6ewoibnfmbfyz3a', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:43 [openai._base_client] DEBUG: request_id: req_ioabfomxq6kjqmfvaifowosvvfqxhxd3olpyh6ewoibnfmbfyz3a 2026-06-21 03:26:43 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-94db58c6-38ca-4d43-a4e6-4d11b953748d', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Food and staff were great\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:43 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:43 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:43 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:43 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:43 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:43 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:45 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:45 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'4114'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_42e6mft7smhf7g2usvghf4gcj2f2znjxptvnje4gw2fecznhvyyq'), (b'x-request-id', b'req_42e6mft7smhf7g2usvghf4gcj2f2znjxptvnje4gw2fecznhvyyq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:45 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:45 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:45 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:45 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:45 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:45 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:45 GMT', 'content-type': 'application/json', 'content-length': '4114', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_42e6mft7smhf7g2usvghf4gcj2f2znjxptvnje4gw2fecznhvyyq', 'x-request-id': 'req_42e6mft7smhf7g2usvghf4gcj2f2znjxptvnje4gw2fecznhvyyq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:45 [openai._base_client] DEBUG: request_id: req_42e6mft7smhf7g2usvghf4gcj2f2znjxptvnje4gw2fecznhvyyq 2026-06-21 03:26:45 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-7f320a2f-09a1-454b-9751-00d3d85e2bac', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Sohel was a very helpful\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:45 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:45 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:45 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:45 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:45 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:45 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:46 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:46 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2642'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_5tnkcuudwf5gjz2zzervrtpwatqeuzejp6bd66paetsmazgtjkvq'), (b'x-request-id', b'req_5tnkcuudwf5gjz2zzervrtpwatqeuzejp6bd66paetsmazgtjkvq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:46 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:46 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:46 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:46 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:46 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:46 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:46 GMT', 'content-type': 'application/json', 'content-length': '2642', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_5tnkcuudwf5gjz2zzervrtpwatqeuzejp6bd66paetsmazgtjkvq', 'x-request-id': 'req_5tnkcuudwf5gjz2zzervrtpwatqeuzejp6bd66paetsmazgtjkvq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:46 [openai._base_client] DEBUG: request_id: req_5tnkcuudwf5gjz2zzervrtpwatqeuzejp6bd66paetsmazgtjkvq 2026-06-21 03:26:46 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-2caa6b89-2c96-4168-9155-d58f3f686217', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Anupam and Sandeep were incredible! They were very sweet and attentive. They helped us with our order immensely. They suggested options when a dish was not available. They were cognizant of our veg and non veg needs and served us accordingly. They are amazing people! \n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:46 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:46 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:46 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:46 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:46 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:46 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:49 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:49 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'4684'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_hzn47jhyyge2bu4c2r3mtjkggdgd7nqt4ndavhvlsbsrmhx6sa3q'), (b'x-request-id', b'req_hzn47jhyyge2bu4c2r3mtjkggdgd7nqt4ndavhvlsbsrmhx6sa3q'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:49 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:49 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:49 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:49 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:49 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:49 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:49 GMT', 'content-type': 'application/json', 'content-length': '4684', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_hzn47jhyyge2bu4c2r3mtjkggdgd7nqt4ndavhvlsbsrmhx6sa3q', 'x-request-id': 'req_hzn47jhyyge2bu4c2r3mtjkggdgd7nqt4ndavhvlsbsrmhx6sa3q', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:49 [openai._base_client] DEBUG: request_id: req_hzn47jhyyge2bu4c2r3mtjkggdgd7nqt4ndavhvlsbsrmhx6sa3q 2026-06-21 03:26:49 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-7d9f7696-d54e-4d25-a8b8-12edf8958a52', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n The server Joy waited on me and my friend. He was a very good sport. Very professional and attended to us actively. The other staff were proactive as well. Overall, the experience was nice \n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:49 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:49 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:49 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:49 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:49 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:49 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:50 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:50 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3387'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_bqhyhulrhcsvhblidyta7jn3utbpmeinmr3zkkt4ahkpmiy4lzua'), (b'x-request-id', b'req_bqhyhulrhcsvhblidyta7jn3utbpmeinmr3zkkt4ahkpmiy4lzua'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:50 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:50 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:50 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:50 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:50 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:50 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:50 GMT', 'content-type': 'application/json', 'content-length': '3387', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_bqhyhulrhcsvhblidyta7jn3utbpmeinmr3zkkt4ahkpmiy4lzua', 'x-request-id': 'req_bqhyhulrhcsvhblidyta7jn3utbpmeinmr3zkkt4ahkpmiy4lzua', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:50 [openai._base_client] DEBUG: request_id: req_bqhyhulrhcsvhblidyta7jn3utbpmeinmr3zkkt4ahkpmiy4lzua 2026-06-21 03:26:50 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-cc3ce5f0-9eab-44c5-86a3-3ab2b563f789', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Limited choices and food wasn’t great\n Customer Rating:\n 3 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:50 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:50 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:50 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:50 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:50 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:50 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:52 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:52 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2651'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_272ru6ujkvfpmo2dwylhp3hhsbm2csu3cpuqzllm27tixsofwd2a'), (b'x-request-id', b'req_272ru6ujkvfpmo2dwylhp3hhsbm2csu3cpuqzllm27tixsofwd2a'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:52 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:52 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:52 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:52 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:52 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:52 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:52 GMT', 'content-type': 'application/json', 'content-length': '2651', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_272ru6ujkvfpmo2dwylhp3hhsbm2csu3cpuqzllm27tixsofwd2a', 'x-request-id': 'req_272ru6ujkvfpmo2dwylhp3hhsbm2csu3cpuqzllm27tixsofwd2a', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:52 [openai._base_client] DEBUG: request_id: req_272ru6ujkvfpmo2dwylhp3hhsbm2csu3cpuqzllm27tixsofwd2a 2026-06-21 03:26:52 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-178d0e84-1d6b-4998-8c60-a020a150621e', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n We are so happy for Sourav❤️🤗\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:52 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:52 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:52 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:52 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:52 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:52 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:53 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:53 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'2304'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_uj6n5mdaopd3lgwb7nadibnjpzazqje6p7d6u3tvua3ye5vtzbha'), (b'x-request-id', b'req_uj6n5mdaopd3lgwb7nadibnjpzazqje6p7d6u3tvua3ye5vtzbha'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:53 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:53 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:53 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:53 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:53 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:53 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:53 GMT', 'content-type': 'application/json', 'content-length': '2304', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_uj6n5mdaopd3lgwb7nadibnjpzazqje6p7d6u3tvua3ye5vtzbha', 'x-request-id': 'req_uj6n5mdaopd3lgwb7nadibnjpzazqje6p7d6u3tvua3ye5vtzbha', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:53 [openai._base_client] DEBUG: request_id: req_uj6n5mdaopd3lgwb7nadibnjpzazqje6p7d6u3tvua3ye5vtzbha 2026-06-21 03:26:53 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-fe24620d-e468-4dcf-927c-bf735261d08c', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Divayashree and Sandeep good host\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:53 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:53 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:53 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:53 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:53 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:53 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:54 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:54 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'1941'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_kiay3acnw4dyhjc7teh2psns5txrf2purshg3y35jsul6djhosma'), (b'x-request-id', b'req_kiay3acnw4dyhjc7teh2psns5txrf2purshg3y35jsul6djhosma'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:54 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:54 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:54 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:54 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:54 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:54 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:54 GMT', 'content-type': 'application/json', 'content-length': '1941', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_kiay3acnw4dyhjc7teh2psns5txrf2purshg3y35jsul6djhosma', 'x-request-id': 'req_kiay3acnw4dyhjc7teh2psns5txrf2purshg3y35jsul6djhosma', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:54 [openai._base_client] DEBUG: request_id: req_kiay3acnw4dyhjc7teh2psns5txrf2purshg3y35jsul6djhosma 2026-06-21 03:26:54 [openai._base_client] DEBUG: Request options: {'method': 'post', 'url': '/responses', 'files': None, 'idempotency_key': 'stainless-python-retry-d954ef58-ceea-44fa-b1aa-08ea38f0dd91', 'content': None, 'json_data': {'input': ' You are an expert restaurant review analyst.\n Analyze the customer review using Aspect-Based Sentiment Analysis (ABSA).\n Your job is to identify every distinct aspect mentioned in the review and classify each one.\n Use this taxonomy of aspects and corresponding subcategories/root:\n Food:\n - Taste\n - Food Quality\n - Portion Size / Quantity\n - Freshness\n - Presentation\n - Food Temperature\n - Consistency\n - Menu Variety\n Service:\n - Staff Behavior\n - Friendliness\n - Attentiveness\n - Speed of Service\n - Order Accuracy\n - Problem Resolution\n Delivery:\n - Delivery Time\n - Packaging Quality\n - Food Spillage\n - Order Completeness\n - Food Condition on Arrival\n Value:\n - Pricing\n - Value for Money\n Hygiene:\n - Cleanliness\n - Food Safety\n Ambience:\n - Seating\n - Noise\n - Lighting\n - Comfort\n For each aspect detected, return:\n 1. aspect\n 2. subcategory/root cause\n 3. sentiment (Positive, Negative, Neutral, Mixed)\n 4. severity (Low, Medium, High)\n 5. intent (Praise, Complaint, Suggestion, Refund Request, Churn Risk, Loyalty Signal)\n 6. evidence (exact phrase from the review supporting the classification)\n Rules:\n - A single review may contain multiple aspects.\n - Extract ALL aspects mentioned.\n - Do not infer aspects not mentioned.\n - Do not infer subcategories not mentioned.\n - If one sentence contains both positive and negative signals for the same aspect, mark sentiment as Mixed.\n - Be strict and operationally useful.\n - Focus on actionable business insights.\n - Also provide an overall review sentiment (Positive, Negative, Neutral, Mixed).\n Return output ONLY in valid JSON using this format:\n {\n "overall_sentiment": "",\n "aspects": \n {\n "aspect": "",\n "subcategory": "",\n "sentiment": "",\n "severity": "",\n "intent": "",\n "evidence": ""\n }\n }\n\n Customer Review:\n Food is very nice.Divyashree and Sandip served us well\n Customer Rating:\n 5 ', 'model': 'openai.gpt-oss-120b'}} 2026-06-21 03:26:54 [openai._base_client] DEBUG: Sending HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses 2026-06-21 03:26:54 [httpcore.http11] DEBUG: send_request_headers.started request= 2026-06-21 03:26:54 [httpcore.http11] DEBUG: send_request_headers.complete 2026-06-21 03:26:54 [httpcore.http11] DEBUG: send_request_body.started request= 2026-06-21 03:26:54 [httpcore.http11] DEBUG: send_request_body.complete 2026-06-21 03:26:54 [httpcore.http11] DEBUG: receive_response_headers.started request= 2026-06-21 03:26:55 [httpcore.http11] DEBUG: receive_response_headers.complete return_value=(b'HTTP/1.1', 200, b'OK', [(b'Date', b'Sun, 21 Jun 2026 03:26:55 GMT'), (b'Content-Type', b'application/json'), (b'Content-Length', b'3698'), (b'Connection', b'keep-alive'), (b'x-amzn-requestid', b'req_v4m6r2vofv6n5bnizywsky5al4ror5arugeojvhayevhctmeszrq'), (b'x-request-id', b'req_v4m6r2vofv6n5bnizywsky5al4ror5arugeojvhayevhctmeszrq'), (b'vary', b'origin, access-control-request-method, access-control-request-headers'), (b'access-control-allow-origin', b'*'), (b'access-control-expose-headers', b'x-amzn-requestid,x-request-id,date')]) 2026-06-21 03:26:55 [httpx] INFO: HTTP Request: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "HTTP/1.1 200 OK" 2026-06-21 03:26:55 [httpcore.http11] DEBUG: receive_response_body.started request= 2026-06-21 03:26:55 [httpcore.http11] DEBUG: receive_response_body.complete 2026-06-21 03:26:55 [httpcore.http11] DEBUG: response_closed.started 2026-06-21 03:26:55 [httpcore.http11] DEBUG: response_closed.complete 2026-06-21 03:26:55 [openai._base_client] DEBUG: HTTP Response: POST https://bedrock-mantle.ap-south-1.api.aws/v1/responses "200 OK" Headers({'date': 'Sun, 21 Jun 2026 03:26:55 GMT', 'content-type': 'application/json', 'content-length': '3698', 'connection': 'keep-alive', 'x-amzn-requestid': 'req_v4m6r2vofv6n5bnizywsky5al4ror5arugeojvhayevhctmeszrq', 'x-request-id': 'req_v4m6r2vofv6n5bnizywsky5al4ror5arugeojvhayevhctmeszrq', 'vary': 'origin, access-control-request-method, access-control-request-headers', 'access-control-allow-origin': '*', 'access-control-expose-headers': 'x-amzn-requestid,x-request-id,date'}) 2026-06-21 03:26:55 [openai._base_client] DEBUG: request_id: req_v4m6r2vofv6n5bnizywsky5al4ror5arugeojvhayevhctmeszrq 2026-06-21 03:26:55 [scrapy.statscollectors] INFO: Dumping Scrapy stats: {'downloader/request_bytes': 4012674, 'downloader/request_count': 742, 'downloader/request_method_count/GET': 742, 'downloader/response_bytes': 3754923, 'downloader/response_count': 742, 'downloader/response_status_count/200': 742, 'elapsed_time_seconds': 466.915589, 'finish_reason': 'finished', 'finish_time': datetime.datetime(2026, 6, 21, 3, 26, 55, 807876, tzinfo=datetime.timezone.utc), 'item_scraped_count': 130, 'items_per_minute': None, 'log_count/DEBUG': 2449, 'log_count/INFO': 126, 'log_count/WARNING': 35, 'memusage/max': 161320960, 'memusage/startup': 145920000, 'request_depth_max': 4, 'response_received_count': 742, 'responses_per_minute': None, 'scheduler/dequeued': 742, 'scheduler/dequeued/memory': 742, 'scheduler/enqueued': 742, 'scheduler/enqueued/memory': 742, 'start_time': datetime.datetime(2026, 6, 21, 3, 19, 8, 892287, tzinfo=datetime.timezone.utc)} 2026-06-21 03:26:55 [scrapy.core.engine] INFO: Spider closed (finished) 2026-06-21 03:26:56 [httpcore.connection] DEBUG: close.started 2026-06-21 03:26:56 [httpcore.connection] DEBUG: close.complete