<prompt> Tengeneza programu ya Golang inayotumia API ya Twitter kutiririsha tweets zilizo na maneno muhimu maalum, kufanya uchanganuzi wa hisia kwenye maandishi ya tweet, na kuhifadhi matokeo katika hifadhidata ya MongoDB. Programu inapaswa pia kutoa mwisho wa kuuliza data iliyohifadhiwa kulingana na neno kuu na alama ya maoni.  <response>: Ili kutengeneza programu hii ya Golang, utahitaji kufuata hatua hizi:1. Weka mazingira yako ya maendeleo2. Sajili akaunti ya Msanidi Programu wa Twitter na uunde Programu3. Tekeleza mteja wa API ya Twitter katika Go4. Fanya uchanganuzi wa hisia kwa kutumia maktaba au huduma ya watu wengine5. Hifadhi matokeo katika MongoDB6. Unda seva ya HTTP yenye sehemu ya mwisho ya kuuliza data iliyohifadhiwaHapa kuna mfano wa utekelezaji wa utendaji unaohitajika:nendakifurushi kikuukuagiza usimbajijsonfmtloginethttposgithub.comdghubblego-twittertwittergithub.comdghubbleoauth1github.comjohogodotenvgo.mongodb.orgmongo-driverbsongo.mongodb.orgmongo-drivermongogo.mongodb.orgmongo-drivermongooptionschapa muundo wa TweetSentiment TweetID int64 bson:tweet_idMfuatano wa maandishi bson:textSentiment float64 bson:hisiaMfuatano wa neno kuu bson:neno kuufunc main makosa : godotenv.Loadikiwa makosa ! nil log.FatalHitilafu ya kupakia faili ya .envUserKey : os.GetenvTWITTER_CONSUMER_KEYuserSecret : os.GetenvTWITTER_CONSUMER_SECRETaccessToken : os.GetenvTWITTER_ACCESS_TOKENaccessSecret : os.GetenvTWITTER_ACCESS_SECRETconfig : oauth1.NewConfigconsumerKey, consumerSecretishara : oauth1.NewTokenaccessToken, accessSecrethttpMteja : config.Clientoauth1.NoContext, tokenimteja : twitter.NewClienthttpClientmaneno muhimu : stringgolang, mongodbstreamFilterParams : twitter.StreamFilterParamsWimbo: maneno muhimu,Maonyo ya duka: twitter.Boolkweli,mkondo, kosa : client.Streams.FilterstreamFilterParamsikiwa makosa ! nil log.Fatalhitilafudemux : twitter.NewSwitchDemuxdemux.Tweet functweet twitter.Tweet hisia : analyzeSentimenttweet.TexttweetSentiment :TweetSentimentTweetID: tweet.ID,Maandishi: tweet.Text,Hisia: hisia,Neno kuu: findKeywordmanenomsingi, tweet.Text,storeTweetSentimenttweetSentimentnenda demux.HandleChanstream.Messageshttp.HandleFuncquery, queryHandlerlog.Fatalhttp.ListenAndServe:8080, nilfunc analyzeSentimenttext string float64 Tekeleza mantiki yako ya uchanganuzi wa maoni hapa. Unaweza kutumia maktaba ya wahusika wengine au huduma kama vile TextBlob, API ya Lugha Asilia ya Wingu la Google, n.k.kurudi 0.0func findKeywordmaneno kuu kamba, kamba ya maandishi kamba kwa _, neno kuu : anuwai ya maneno muhimu ikiwa mifuatano.Inastrings.ToLowertext, strings.ToLowerneno kuu neno kuu la kurudikurudi func storeTweetSentimenttweetSentiment TweetSentiment clientOptions : options.Client.ApplyURImongodb:localhost:27017mteja, kosa : mongo.Connectcontext.Background, clientOptionsikiwa makosa ! nil log.Fatalhitilafumkusanyiko : mteja. Hifadhidatatweets.MkusanyikohisiainsertResult, makosa : collection.InsertOnecontext.Background, tweetSentimentikiwa makosa ! nil log.Fatalhitilafufmt.PrintlnTwiti iliyoingizwa yenye kitambulisho:, ingizaResult.InsertedIDfunc queryHandlerw http.ResponseWriter, r http.Ombi neno kuu : r.URL.Query.Pataneno kuuminSentiment : r.URL.Query.Patamin_sentimentchujio : bson.Mneno kuu: neno kuu, hisia: bson.Mgte: minSentimentclientOptions : options.Client.ApplyURImongodb:localhost:27017mteja, kosa : mongo.Connectcontext.Background, clientOptionsikiwa makosa ! nil log.Fatalhitilafumkusanyiko : mteja. Hifadhidatatweets.Mkusanyikohisiakishale, kosa : collection.Findcontext.Background, kichujioikiwa makosa ! nil log.Fatalhitilafuvar results TweetSentimenterr cursor.Allcontext.Background, matokeoikiwa makosa ! nil log.Fatalhitilafujson.NewEncoderw.EncodermatokeoHakikisha kuwa umebadilisha kitendakazi cha uchanganuzi wa hisia za kishika nafasi analyzeSentiment na utekelezaji halisi kwa kutumia maktaba au huduma ya watu wengine.Ili kutekeleza programu hii, utahitaji kuunda faili ya .env katika saraka yako ya mradi iliyo na kitambulisho chako cha API ya Twitter:TWITTER_CONSUMER_KEYufunguo_wa_mtumiajiTWITTER_CONSUMER_SECRETsiri_ya_mtumiajiTWITTER_ACCESS_TOKENtokeni_yako_ya_ufikiajiTWITTER_ACCESS_SECRETsiri_ya_ufikiaji_wakoUtahitaji pia kusakinisha tegemezi zinazohitajika:shnenda upate github.comdghubblego-twittertwitternenda upate github.comdghubbleoauth1nenda upate github.comjohogodotenvnenda upate go.mongodb.orgmongo-drivermongoSasa unaweza kuunda na kuendesha programu:shnenda kujenga -o kuu.kuuProgramu itaanza kutiririsha tweets zilizo na maneno muhimu yaliyotajwa, kufanya uchanganuzi wa hisia juu yao, na kuhifadhi matokeo katika MongoDB. Unaweza kuuliza data iliyohifadhiwa kwa kutuma ombi la HTTP kwenye sehemu ya mwisho ya hoja na neno kuu linalohitajika na alama ya chini ya hisia kama vigezo vya hoja: 