File size: 4,287 Bytes
8bc3c2a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import requests"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "# API configuration\n",
    "API_URL = \"https://maximofn-iriusrisktestchallenge.hf.space\"\n",
    "API_KEY = \"your_api_key\""
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Headers for authentication\n",
    "headers = {\n",
    "    \"X-API-Key\": API_KEY,\n",
    "    \"Content-Type\": \"application/json\"\n",
    "}"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Generate text\n",
    "def generate_text(query, thread_id=\"default\", system_prompt=None):\n",
    "    url = f\"{API_URL}/generate\"\n",
    "    \n",
    "    data = {\n",
    "        \"query\": query,\n",
    "        \"thread_id\": thread_id\n",
    "    }\n",
    "    \n",
    "    # Add system prompt if provided\n",
    "    if system_prompt:\n",
    "        data[\"system_prompt\"] = system_prompt\n",
    "    \n",
    "    try:\n",
    "        response = requests.post(url, json=data, headers=headers)\n",
    "        if response.status_code == 200:\n",
    "            result = response.json()\n",
    "            return result[\"generated_text\"]\n",
    "        else:\n",
    "            print(f\"Error: {response.status_code}\")\n",
    "            print(f\"Details: {response.text}\")\n",
    "            return None\n",
    "    except Exception as e:\n",
    "        print(f\"Request failed: {str(e)}\")\n",
    "        return None"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Example with custom thread and system prompt\n",
    "result = generate_text(\n",
    "    query=\"Explain object-oriented programming\",\n",
    "    thread_id=\"programming_tutorial\",\n",
    "    system_prompt=\"You are a programming teacher. Explain concepts in simple terms.\"\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Summarize text\n",
    "def summarize_text(text, max_length=200, thread_id=\"default\"):\n",
    "    url = f\"{API_URL}/summarize\"\n",
    "    \n",
    "    data = {\n",
    "        \"text\": text,\n",
    "        \"max_length\": max_length,\n",
    "        \"thread_id\": thread_id\n",
    "    }\n",
    "    \n",
    "    try:\n",
    "        response = requests.post(url, json=data, headers=headers)\n",
    "        if response.status_code == 200:\n",
    "            result = response.json()\n",
    "            return result[\"summary\"]\n",
    "        else:\n",
    "            print(f\"Error: {response.status_code}\")\n",
    "            print(f\"Details: {response.text}\")\n",
    "            return None\n",
    "    except Exception as e:\n",
    "        print(f\"Request failed: {str(e)}\")\n",
    "        return None"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Example usage\n",
    "text_to_summarize = \"\"\"\n",
    "Python is a high-level, interpreted programming language created by Guido van Rossum \n",
    "and released in 1991. Python's design philosophy emphasizes code readability with \n",
    "the use of significant whitespace. Its language constructs and object-oriented \n",
    "approach aim to help programmers write clear, logical code for small and large-scale projects.\n",
    "\"\"\"\n",
    "\n",
    "summary = summarize_text(text_to_summarize, max_length=50)\n",
    "if summary:\n",
    "    print(\"Summary:\", summary)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "base",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.8"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}