|
19 | 19 | "source": [ |
20 | 20 | "import google.generativeai as genai\n", |
21 | 21 | "import agentops\n", |
22 | | - "from agentops.llms.providers.gemini import GeminiProvider" |
| 22 | + "from dotenv import load_dotenv\n", |
| 23 | + "import os" |
23 | 24 | ] |
24 | 25 | }, |
25 | 26 | { |
26 | 27 | "cell_type": "code", |
27 | | - "execution_count": null, |
| 28 | + "execution_count": 2, |
28 | 29 | "id": "a94545c9", |
29 | 30 | "metadata": {}, |
30 | 31 | "outputs": [], |
31 | 32 | "source": [ |
32 | | - "# Configure the Gemini API\n", |
33 | | - "import os\n", |
| 33 | + "load_dotenv()\n", |
34 | 34 | "\n", |
35 | | - "# Replace with your API key\n", |
36 | | - "# You can get one at: https://ai.google.dev/tutorials/setup\n", |
37 | | - "GEMINI_API_KEY = \"YOUR_API_KEY_HERE\" # Replace with your API key\n", |
38 | | - "genai.configure(api_key=GEMINI_API_KEY)\n", |
| 35 | + "GEMINI_API_KEY = os.getenv(\"GEMINI_API_KEY\") or \"your gemini api key\"\n", |
| 36 | + "AGENTOPS_API_KEY = os.getenv(\"AGENTOPS_API_KEY\") or \"your agentops api key\"\n", |
39 | 37 | "\n", |
40 | | - "# Note: In production, use environment variables:\n", |
41 | | - "# import os\n", |
42 | | - "# GEMINI_API_KEY = os.getenv(\"GEMINI_API_KEY\")\n", |
43 | | - "# genai.configure(api_key=GEMINI_API_KEY)" |
| 38 | + "genai.configure(api_key=GEMINI_API_KEY)" |
44 | 39 | ] |
45 | 40 | }, |
46 | 41 | { |
|
51 | 46 | "outputs": [], |
52 | 47 | "source": [ |
53 | 48 | "# Initialize AgentOps and Gemini model\n", |
54 | | - "ao_client = agentops.init()\n", |
55 | | - "model = genai.GenerativeModel(\"gemini-1.5-flash\")\n", |
56 | | - "\n", |
57 | | - "# Initialize and override Gemini provider\n", |
58 | | - "provider = GeminiProvider(model)\n", |
59 | | - "provider.override()" |
| 49 | + "agentops.init()\n", |
| 50 | + "model = genai.GenerativeModel(\"gemini-1.5-flash\")" |
60 | 51 | ] |
61 | 52 | }, |
62 | 53 | { |
|
70 | 61 | "print(\"Testing synchronous generation:\")\n", |
71 | 62 | "response = model.generate_content(\n", |
72 | 63 | " \"What are the three laws of robotics?\",\n", |
73 | | - " session=ao_client\n", |
| 64 | + " # session=ao_client\n", |
74 | 65 | ")\n", |
75 | 66 | "print(response.text)" |
76 | 67 | ] |
|
87 | 78 | "response = model.generate_content(\n", |
88 | 79 | " \"Explain the concept of machine learning in simple terms.\",\n", |
89 | 80 | " stream=True,\n", |
90 | | - " session=ao_client\n", |
| 81 | + " # session=ao_client\n", |
91 | 82 | ")\n", |
92 | 83 | "\n", |
93 | 84 | "for chunk in response:\n", |
|
98 | 89 | "print(\"\\nTesting another synchronous generation:\")\n", |
99 | 90 | "response = model.generate_content(\n", |
100 | 91 | " \"What is the difference between supervised and unsupervised learning?\",\n", |
101 | | - " session=ao_client\n", |
| 92 | + " # session=ao_client\n", |
102 | 93 | ")\n", |
103 | 94 | "print(response.text)" |
104 | 95 | ] |
|
111 | 102 | "outputs": [], |
112 | 103 | "source": [ |
113 | 104 | "# End session and check stats\n", |
114 | | - "agentops.end_session(\n", |
115 | | - " end_state=\"Success\",\n", |
116 | | - " end_state_reason=\"Gemini integration example completed successfully\"\n", |
117 | | - ")" |
118 | | - ] |
119 | | - }, |
120 | | - { |
121 | | - "cell_type": "code", |
122 | | - "execution_count": null, |
123 | | - "id": "b6d35f28", |
124 | | - "metadata": {}, |
125 | | - "outputs": [], |
126 | | - "source": [ |
127 | | - "# Clean up\n", |
128 | | - "provider.undo_override()" |
| 105 | + "agentops.end_session(end_state=\"Success\")" |
129 | 106 | ] |
130 | 107 | } |
131 | 108 | ], |
132 | | - "metadata": {}, |
| 109 | + "metadata": { |
| 110 | + "kernelspec": { |
| 111 | + "display_name": "ops", |
| 112 | + "language": "python", |
| 113 | + "name": "python3" |
| 114 | + }, |
| 115 | + "language_info": { |
| 116 | + "codemirror_mode": { |
| 117 | + "name": "ipython", |
| 118 | + "version": 3 |
| 119 | + }, |
| 120 | + "file_extension": ".py", |
| 121 | + "mimetype": "text/x-python", |
| 122 | + "name": "python", |
| 123 | + "nbconvert_exporter": "python", |
| 124 | + "pygments_lexer": "ipython3", |
| 125 | + "version": "3.10.16" |
| 126 | + } |
| 127 | + }, |
133 | 128 | "nbformat": 4, |
134 | 129 | "nbformat_minor": 5 |
135 | 130 | } |
0 commit comments