Si hunc articulum legis, probabiliter iam nota es cum possibilitatibus quae venient cum API utendo (Application Programming Interface).
Addendo unum ex multis APIs apertis ad applicationem tuum, functionem applicationis extendere potes vel cum notitia necessaria ditare. Sed quid si peculiarem notam elaborasti quam cum communitate communicare vis?
Responsio simplex est: debes API creata sua.
Etsi hoc primo negotium arduum videri potest, est actu simplex. Ostendemus tibi quomodo hoc Pythone utens facias.
Quod vos postulo ut incipiat
Ut develop API opus est:
Python 3;
tenensque lenticulam - simplex et facilis ad utendum compage ad applicationes interretiales conficiendas;
LIGULA-RESTful extensio est pro Flask quae permittit tibi ut requiem API cito et minimam configurationem evolvere sinat.
instruitur cum imperio;
pip install flask-restful
Liberum intensive progressionis cursum pro incipientibus commendamus: Telegram bot progressionem in C# - August 26-28. Cursus gratuitus intensivus qui permittit ut intelligas quomodo adiutores autocineti laborant, specialia operandi cum telegraphis API et aliis nuances. Tres optimi participantes accipient 30 rubles ex Skillbox.
Ut munere perfecto intellegam, duo nominavi intellegam.
Quid est REQUIES?
CETERA API (Repraesentativa Translatio) est API qui petitionibus HTTP utitur ad commutationem data.
CETERA APIs est quaedam criteria:
Client-server architectura: Cliens mutuatur cum usore interface, et servo mutuatur cum backend notitia et repositione. Cliens et cultor sui iuris sunt, quodvis eorum separatim ab altero restitui potest.
Stat sine - nulla clientis notitia reposita in calculonis servi. Sessio publica in cliente latere reposita est.
Cacheability - Clientes responsiones servo cache possunt ad altiore observantia emendare.
Crudus quid est?
crud notio programmandi est quae quattuor actiones praecipuas describit (creare, legere, renovare et delere).
In REST API, rationes petendi et modi petendi responsales sunt actionibus ut post, impetra, pone, dele.
Nunc praecipuas condiciones intelligimus, API creare possumus.
consilio
Faciamus repositio sententiarum circa intelligentiam artificialem. AI unum e technologiae hodie crescentis velocissimae est, et Python instrumentum populare cum AI operandi est.
Hoc API, elit Python de AI celeriter informationes accipere et novis progressibus inspirari potest. Si de hac re elit cogitationes pretiosas habet, eas reposito addere poterit.
Modulorum necessariorum inferentes initium et erectionem Flask situs:
from flask import Flask
from flask_restful import Api, Resource, reqparse
import random
app = Flask(__name__)
api = Api(app)
In hoc PRAECISIO, Flask, Api et Resource sunt classes nobis necessariae.
Reqparse est interrogationis amphorae parsing... Temere quoque moduli opus est ut temere quotem ostendas.
Nunc promptuariam actuum circa AI creabimus.
Singula repo viscus continebit:
digital ID;
nomen auctoris scntentia;
citare.
Cum haec disciplina sit exemplum, omnes introitus in Pythone indice ponemus. In applicatione reali, loco database uti volumus.
ai_quotes = [
{
"id": 0,
"author": "Kevin Kelly",
"quote": "The business plans of the next 10,000 startups are easy to forecast: " +
"Take X and add AI."
},
{
"id": 1,
"author": "Stephen Hawking",
"quote": "The development of full artificial intelligence could " +
"spell the end of the human race⦠" +
"It would take off on its own, and re-design " +
"itself at an ever increasing rate. " +
"Humans, who are limited by slow biological evolution, " +
"couldn't compete, and would be superseded."
},
{
"id": 2,
"author": "Claude Shannon",
"quote": "I visualize a time when we will be to robots what " +
"dogs are to humans, " +
"and Iβm rooting for the machines."
},
{
"id": 3,
"author": "Elon Musk",
"quote": "The pace of progress in artificial intelligence " +
"(Iβm not referring to narrow AI) " +
"is incredibly fast. Unless you have direct " +
"exposure to groups like Deepmind, " +
"you have no idea how fast β it is growing " +
"at a pace close to exponential. " +
"The risk of something seriously dangerous " +
"happening is in the five-year timeframe." +
"10 years at most."
},
{
"id": 4,
"author": "Geoffrey Hinton",
"quote": "I have always been convinced that the only way " +
"to get artificial intelligence to work " +
"is to do the computation in a way similar to the human brain. " +
"That is the goal I have been pursuing. We are making progress, " +
"though we still have lots to learn about " +
"how the brain actually works."
},
{
"id": 5,
"author": "Pedro Domingos",
"quote": "People worry that computers will " +
"get too smart and take over the world, " +
"but the real problem is that they're too stupid " +
"and they've already taken over the world."
},
{
"id": 6,
"author": "Alan Turing",
"quote": "It seems probable that once the machine thinking " +
"method had started, it would not take long " +
"to outstrip our feeble powers⦠" +
"They would be able to converse " +
"with each other to sharpen their wits. " +
"At some stage therefore, we should " +
"have to expect the machines to take control."
},
{
"id": 7,
"author": "Ray Kurzweil",
"quote": "Artificial intelligence will reach " +
"human levels by around 2029. " +
"Follow that out further to, say, 2045, " +
"we will have multiplied the intelligence, " +
"the human biological machine intelligence " +
"of our civilization a billion-fold."
},
{
"id": 8,
"author": "Sebastian Thrun",
"quote": "Nobody phrases it this way, but I think " +
"that artificial intelligence " +
"is almost a humanities discipline. It's really an attempt " +
"to understand human intelligence and human cognition."
},
{
"id": 9,
"author": "Andrew Ng",
"quote": "We're making this analogy that AI is the new electricity." +
"Electricity transformed industries: agriculture, " +
"transportation, communication, manufacturing."
}
]
Nunc opus est creare genus resource Quote qui operationes nostrorum API terminos definiet. Intra genus quattuor modi debes declarare: posside, pone, pone, dele.
Sit scriptor satus modum cum GET
Efficere potest ut peculiarem numerum definias eius ID, vel temere auctoritatem si ID non specificata est.
class Quote(Resource):
def get(self, id=0):
if id == 0:
return random.choice(ai_quotes), 200
for quote in ai_quotes:
if(quote["id"] == id):
return quote, 200
return "Quote not found", 404
GET methodum temere inducens si ID valorem default contineat, i.e. nulla id est certa cum vocant modum.
Si specificatur, methodus inter citationes perquirit et invenit eum qui ID definitum continet. Si nihil invenitur, nuntius "Quote non invenitur, 404" manifestatur.
Memento: modus redit HTTP status 200 si petitio bene fuit et 404 si recordum non inventum est.
Nunc faciamus TABULA methodum ut novum textum repositorium addas
Id inveniet cuiusque novae auctoritatis sicut tu typus. Praeterea, POST reqparse utetur ad parametris parse quae in corpore rogationis ibit (auctor et textum adducunt).
def post(self, id):
parser = reqparse.RequestParser()
parser.add_argument("author")
parser.add_argument("quote")
params = parser.parse_args()
for quote in ai_quotes:
if(id == quote["id"]):
return f"Quote with id {id} already exists", 400
quote = {
"id": int(id),
"author": params["author"],
"quote": params["quote"]
}
ai_quotes.append(quote)
return quote, 201
In codice superius, POST methodum prolatum ID accepit. Tum reqparse usus, auctorem et citationem ex interrogatione restituit, eas in dictionario params recondens.
Si auctoritas cum ID determinatis iam existit, modus nuntius congruenti et codici 400 prae se fert.
Si citatio cum ID determinatis nondum creata est, modus novum recordum cum ID et auctoris determinatis creat, necnon alios parametri. Postea addit ingressum ad ai_quotes indicem et ingressum reddit cum novo auctoritate una cum 201 codice.
Nunc modum pono modum exsistentis mutandi in eclesiae reposito
PUT methodus, exemplo praecedente similis, ID accipit et inputet et quotum parametri reqparse utens parses.
Si citatio cum ID determinatis existat, methodus eam novis parametris renovabit ac deinde citationem renovatam cum codice 200 pones. Si citatio nulla cum ID definitis adhuc existit, nova recordum cum codice 201 creabitur.
Denique methodum delere faciamus prolationem removendam quae iam inspirando non est
def delete(self, id):
global ai_quotes
ai_quotes = [qoute for qoute in ai_quotes if qoute["id"] != id]
return f"Quote with id {id} is deleted.", 200
Haec methodus locum ID cum initus accipit et ai_quotes in indice utens in indice communicato accipit.
Nunc omnes methodos creavimus, omnes ad faciendum opus est simpliciter API auxilium addere, viam pone, et Flask currere.
api.add_resource(Quote, "/ai-quotes", "/ai-quotes/", "/ai-quotes/<int:id>")
if __name__ == '__main__':
app.run(debug=True)
CETERA nostra API Service parata est!
Deinde, codicem ad tabulam app.py servare possumus, eam in console utendo mandato:
python3 app.py
Si omnia bona sunt, aliquid simile erimus;
* Debug modus: on
* Cursor on 127.0.0.1: 5000/ (Press CTRL+C decedere)
* Restarting cum stat
* Debugger est active!
* Debugger ACUS: XXXXXXX
Testis API
Postquam API creatur, probatione indiget.
Hoc fieri potest utens Crispum utilitatem consolandi vel Insomnia REQUIEM clientem, vel evulgando API in Celeri API.
Nostrum API evulgare
RapidAPI mercatus amplissimus mundi cum plusquam 10 APIs (et circiter 000 decies centena millia tincidunt).
RapidAPI non solum unum momentum praebet operandi cum APIs tertia-parti, sed etiam facultatem dat tibi API cito ac facile ede tua.
Python API quomodo addere tuo ad RapidAPI mercatum?
Postquam munus tuum API in Heroku editum est, illud addere potes Celeri API. Hic detailed documentorum de hoc loco.
1. RapidAPI crea rationem.
Rationem liberam subcriptio - id fieri potest utens Facebook, Google, GitHub.
2. API addere ad imperium decuriae.
3. Deinde generales informationes de tuis API intrant.
4. Post clicking "API addere" nova pagina apparet ubi informationes de nostris API inire potes.
5. Nunc vel manually API terminos vel download intrare potes swagger-file per OpenAPI.
Age, iam necesse est API terminos ponere in terminis paginae nostrae. In casu nostro, fines notioni CRUD respondent (accipere, post, pone, delere).
Deinde, debes creare GET AI Quote punctum quod temere textum exhibet (si ID defalta est) vel punctum pro ID definito.
Finem creare, deprime "Finem crea" puga pyga.
Nos hunc processum pro omnibus aliis API terminis repetimus. Ita est! Gratulor, API tuum edidi!
Si bene omnia, API pagina aliquid simile hoc spectabit;
conclusio,
In hoc articulo didicimus processum creandi tuum API Servitii in Pythone restantem, cum processu evulgandi API ad nubem Heroku et illum ad directorium RapidAPI addendo.
Sed probatio versionis ostendit solum principia API progressionis - nuances sicut securitas, culpa tolerantia et scalabilitas non sunt consideranda.
Cum API explicans realem, haec omnia ratio habenda est.