forked from CopilotC-Nvim/CopilotChat.nvim
-
Notifications
You must be signed in to change notification settings - Fork 0
/
structure.drawio
87 lines (87 loc) · 7.5 KB
/
structure.drawio
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
<mxfile host="app.diagrams.net" modified="2024-03-10T19:28:56.968Z" agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) QtWebEngine/6.6.1 Chrome/112.0.5615.213 Safari/537.36" etag="OtsaX1SBaZkgPakHFnxU" version="24.0.4" type="device">
<diagram name="Page-1" id="xTb7IQX-telAug9JSafD">
<mxGraphModel dx="1432" dy="813" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="720" pageHeight="400" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="eOs-nvW8SsAfTkMGeZ8a-22" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.25;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="eOs-nvW8SsAfTkMGeZ8a-1" target="eOs-nvW8SsAfTkMGeZ8a-21">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="eOs-nvW8SsAfTkMGeZ8a-23" value="<font style="font-size: 8px;">4. send response to chat</font>" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="eOs-nvW8SsAfTkMGeZ8a-22">
<mxGeometry x="0.4318" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="eOs-nvW8SsAfTkMGeZ8a-1" value="CopilotChat" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="160" y="160" width="200" height="40" as="geometry" />
</mxCell>
<mxCell id="eOs-nvW8SsAfTkMGeZ8a-25" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;startArrow=classic;startFill=1;" edge="1" parent="1" source="eOs-nvW8SsAfTkMGeZ8a-2" target="eOs-nvW8SsAfTkMGeZ8a-3">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="eOs-nvW8SsAfTkMGeZ8a-28" value="<font style="font-size: 8px;">process request and</font><div><font style="font-size: 8px;">response via curl</font></div>" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="eOs-nvW8SsAfTkMGeZ8a-25">
<mxGeometry x="0.0182" y="-1" relative="1" as="geometry">
<mxPoint x="-8" y="-49" as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="eOs-nvW8SsAfTkMGeZ8a-2" value="copilot.lua" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="160" y="320" width="200" height="40" as="geometry" />
</mxCell>
<mxCell id="eOs-nvW8SsAfTkMGeZ8a-3" value="GitHub Copilot API" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1">
<mxGeometry x="40" y="160" width="80" height="80" as="geometry" />
</mxCell>
<mxCell id="eOs-nvW8SsAfTkMGeZ8a-5" value="prompt" style="rounded=1;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="220" y="40" width="80" height="40" as="geometry" />
</mxCell>
<UserObject label="" tooltip="" id="eOs-nvW8SsAfTkMGeZ8a-6">
<mxCell style="endArrow=classic;html=1;rounded=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" edge="1" parent="1" source="eOs-nvW8SsAfTkMGeZ8a-5" target="eOs-nvW8SsAfTkMGeZ8a-1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="320" y="460" as="sourcePoint" />
<mxPoint x="370" y="410" as="targetPoint" />
</mxGeometry>
</mxCell>
</UserObject>
<mxCell id="eOs-nvW8SsAfTkMGeZ8a-12" value="<font style="font-size: 8px;">1. submit prompt + context</font>" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="eOs-nvW8SsAfTkMGeZ8a-6">
<mxGeometry x="-0.0857" y="1" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="eOs-nvW8SsAfTkMGeZ8a-9" value="" style="endArrow=classic;startArrow=classic;html=1;rounded=0;exitX=0.25;exitY=0;exitDx=0;exitDy=0;entryX=0.25;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="1" source="eOs-nvW8SsAfTkMGeZ8a-2" target="eOs-nvW8SsAfTkMGeZ8a-1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="240" y="250" as="sourcePoint" />
<mxPoint x="220" y="220" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="eOs-nvW8SsAfTkMGeZ8a-13" value="<font style="font-size: 8px;">2. embed context&nbsp;</font><span style="font-size: 8px;">and</span><div><span style="font-size: 8px;">receive embeddings</span></div>" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="eOs-nvW8SsAfTkMGeZ8a-9">
<mxGeometry x="-0.0079" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="eOs-nvW8SsAfTkMGeZ8a-11" value="" style="endArrow=classic;startArrow=classic;html=1;rounded=0;entryX=0.75;entryY=1;entryDx=0;entryDy=0;exitX=0.75;exitY=0;exitDx=0;exitDy=0;" edge="1" parent="1" source="eOs-nvW8SsAfTkMGeZ8a-2" target="eOs-nvW8SsAfTkMGeZ8a-1">
<mxGeometry width="50" height="50" relative="1" as="geometry">
<mxPoint x="245" y="320" as="sourcePoint" />
<mxPoint x="290" y="210" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="eOs-nvW8SsAfTkMGeZ8a-18" value="<font style="font-size: 8px;">3. send prompt&nbsp;</font><span style="font-size: 8px;">and</span><div><span style="font-size: 8px;">handle&nbsp;</span><span style="font-size: 8px;">response stream</span></div>" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="eOs-nvW8SsAfTkMGeZ8a-11">
<mxGeometry x="-0.02" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="eOs-nvW8SsAfTkMGeZ8a-29" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" edge="1" parent="1" source="eOs-nvW8SsAfTkMGeZ8a-21" target="eOs-nvW8SsAfTkMGeZ8a-24">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="eOs-nvW8SsAfTkMGeZ8a-30" value="<font style="font-size: 8px;">display response in buffer</font>" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" vertex="1" connectable="0" parent="eOs-nvW8SsAfTkMGeZ8a-29">
<mxGeometry x="0.413" y="-1" relative="1" as="geometry">
<mxPoint as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="eOs-nvW8SsAfTkMGeZ8a-21" value="chat.lua" style="rounded=0;whiteSpace=wrap;html=1;" vertex="1" parent="1">
<mxGeometry x="400" y="320" width="160" height="40" as="geometry" />
</mxCell>
<mxCell id="eOs-nvW8SsAfTkMGeZ8a-24" value="Neovim Buffer" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;" vertex="1" parent="1">
<mxGeometry x="600" y="160" width="80" height="80" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>